第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 模拟微信/QQ抢红包 输入金额和份数 产生每一个红包的金额

模拟微信/QQ抢红包 输入金额和份数 产生每一个红包的金额

时间:2020-05-25 12:47:50

相关推荐

模拟微信/QQ抢红包 输入金额和份数 产生每一个红包的金额

运行结果示例:

请输入您要发的红包总金额:

10

请输入红包的份数:

10

总共有10.00元红包, 10个人可以抢到!

第1个人抢到1.56元红包, 剩下8.44元

第2个人抢到1.36元红包, 剩下7.08元

第3个人抢到0.35元红包, 剩下6.73元

第4个人抢到1.41元红包, 剩下5.32元

第5个人抢到1.58元红包, 剩下3.74元

第6个人抢到0.27元红包, 剩下3.47元

第7个人抢到0.68元红包, 剩下2.79元

第8个人抢到0.32元红包, 剩下2.47元

第9个人抢到0.65元红包, 剩下1.82元

第10个人抢到1.82元红包, 红包已抢完!

本轮抢红包中第10个人运气最佳!

提示:

可以设置最小红包的金额,如0.01元

需要用到产生随机数,请自行学习Math.random()

格式化时小数点后只保留两位,可以使用

import java.text.DecimalFormat;

参考文档

Java中格式化输出数字 /chuyouyinghe/article/details/51219436 Java随机函数 /VirusLL/article/details/71747225

import java.util.Random;import java.util.Scanner; import java.io.*; import java.text.DecimalFormat;public class Test {public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("请输入您要发的红包总金额:");Scanner inmoney = new Scanner(System.in); double money = inmoney.nextDouble(); System.out.println("请输入红包的份数:");Scanner inpeople = new Scanner(System.in); int people = inpeople.nextInt(); double sum,ans;System.out.println(ans/people);DecimalFormat a = new DecimalFormat("00.00");for(int i = 1; i <= people; i++) {if(i != people) {do {Random r = new Random();sum = r.nextDouble();sum = sum *(ans/people)*10;}while(sum>=money);money -= sum;String s = a.format(sum);String m = a.format(money);System.out.println("第"+i+"个人抢到"+s+"元的红包,剩下"+m+"元");}else {String m = a.format(money);System.out.println("第"+i+"个人抢到"+m+"元的红包, 红包已抢完!");}}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。