微信红包算法
2016-02-17 10:06
471 查看
package test;
import java.math.BigDecimal;
import java.util.Random;
public class Test{
public static void main(String[] args) {
double total=10;//总金额
int num=6;//随机红包数
double min=0.01;//红包最小额度
for (int i=0;i<num-1;i++){
double sa_tolat=(total-(num-1-i)*min)/(num-1-i);
BigDecimal a = new BigDecimal(sa_tolat);
double x = a.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
Random rd = new Random();
double sum_money = (min+rd.nextDouble()) * x;
BigDecimal b = new BigDecimal(sum_money);
double y = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
BigDecimal c = new BigDecimal(Double.toString(total));
BigDecimal d = new BigDecimal(Double.toString(y));
total= c.subtract(d).doubleValue();
System.out.println("第"+(i+1)+"个红包金额=="+y+"余额=="+total);
}
//最后一个红包的金额
System.out.println("第"+num+"个红包金额=="+total+"余额=="+0.00);
}
}
import java.math.BigDecimal;
import java.util.Random;
public class Test{
public static void main(String[] args) {
double total=10;//总金额
int num=6;//随机红包数
double min=0.01;//红包最小额度
for (int i=0;i<num-1;i++){
double sa_tolat=(total-(num-1-i)*min)/(num-1-i);
BigDecimal a = new BigDecimal(sa_tolat);
double x = a.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
Random rd = new Random();
double sum_money = (min+rd.nextDouble()) * x;
BigDecimal b = new BigDecimal(sum_money);
double y = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
BigDecimal c = new BigDecimal(Double.toString(total));
BigDecimal d = new BigDecimal(Double.toString(y));
total= c.subtract(d).doubleValue();
System.out.println("第"+(i+1)+"个红包金额=="+y+"余额=="+total);
}
//最后一个红包的金额
System.out.println("第"+num+"个红包金额=="+total+"余额=="+0.00);
}
}
相关文章推荐
- 20160217002 微信公众平台开发接入指南
- 20160217001 微信公众平台开发(一) 配置接口
- 多家银行开始免费转账,合伙打脸微信?
- 关于微信接口
- 微信管家配置指南
- Android 仿微信图片选择器
- C#开发微信公众平台-就这么简单
- 微信公众号开发-微信网页授权获取用户openid以及用户信息的步骤
- js识别安卓和ios及pc端,以及解决微信的屏蔽
- 微信 二维码生成
- Android微信文件分享
- Zabbix与微信报警
- 微信公众号开发- 网页授权Oauth2.0及API开发
- 微信公众平台生成带参数二维码
- 微信开发教程
- android 应用实现微信好友或朋友圈分享
- 微信红包随机算法初探
- 一个大水的微信入坑经验
- H5外包,微信H5开发
- V3微信支付开发笔录