编写红包, 制定金额与个数,随机分配红包金额

  • 解析思路
# 假定金额100块,红包2个 100/2 = 50
# 第一个人 A 的红包大小范围 [0,50 * 2]
# 第二个人 B 的红包大小范围 [0,100 - A]# 假定金额100块,红包3个 100/3 = 33.33
# 第一个人 A 的红包大小范围 [0,33.33 * 2]
# 第二个人 B 的红白大小范围 [0,(100 - A) * 2]
# 第三个人 C 的红包大小范围 [0,100 - A - B]
  • 代码实现
import randomdef point_double_num(numbers):numbers = str(numbers)       # 150.1891241245i = numbers.index(".")       # 添加索引 index  3return float(numbers[:i+3])  # 拿到两位小数,且没有四舍五入def redEnvelope(money,num):money_list = []all_money = moneyif money / num < 0.01:return "数据错误!"""":param money: 红包总金额:param num: 红包个数:return:"""while num > 1:avg = point_double_num(money/num)avg = 0.01 if avg < 0.01 else avg   # 至少一分钱red_envelope = point_double_num(random.uniform(0.01,avg * 2))red_envelope = 0.01 if red_envelope < 0.01 else red_envelope   # 至少一分钱money_list.append(red_envelope)money -= red_envelopenum -= 1money_list.append(point_double_num(all_money - point_double_num(sum(money_list))))random.shuffle(money_list)   # 洗牌return money_listlst = redEnvelope(1,100)
print(lst)
print(sum(lst))

random模拟随机发红包相关推荐

  1. Random类模拟微信发红包

    //用随机数模拟微信发红包的场景 import java.util.Random; import java.util.Scanner; public class Demo4 { public stat ...

  2. 编写一个函数,简单模拟微信发红包算法。

    编写一个函数,简单模拟微信发红包算法. 函数有两个参数:一个参数表示红包总金额,默认值为100:另一个参数表示红包数量,默认值为15. 所有随机产生的红包金额(保留两位小数)存放在一个列表(同时作为函 ...

  3. python模拟微信发红包,并验证随机性

    python模拟微信发红包,输入金额和红包个数,得到结果,多次发红包,验证先抢后抢红包大小的随机性是否一样. 1.思路 如100元发5个红包,结合几个点几个线段的数学知识,需要在0-100之间取4个不 ...

  4. Java程序模仿随机发红包

    模仿随机发红包 输入金额:xxx         输入发几个包:xx         第一个人xxx元         第二个人xxx元         ...... import java.math ...

  5. 编写一个函数,模拟微信发红包的红包分配过程。函数有两个参数:一个参数表示红包总金额,默认值为100,另一个参数表示红包数量,默认为10。程序输入:红包总金额和红包数量;程序输出:每个红包的金额。要求:

    题目 ‬‬编写一个函数,模拟微信发红包的红包分配过程.函数有两个参数:一个参数表示红包总金额,默认值为100,另一个参数表示红包数量,默认为10.程序输入:红包总金额和红包数量:程序输出:每个红包的金 ...

  6. Java模拟微信发红包,一看就会

    自2014年1月26日悄悄上线后,微信红包迅速流行开来,其火爆程度,不亚于此前的"打飞机"小游戏.而收到红包后想要提现,就必须绑定银行卡,这样一来,绑定微信支付的用户数量大增. 先 ...

  7. python 发红包import random用redenv_python 发红包

    红包1 import random def redpacket(cash,person): lst=[] sum1=0 cash = cash * 100 while cash>0 and pe ...

  8. 用Java写微信红包实现模拟微信发红包

    继承关系如下 题目: 某软件有多名用户(User类),某群聊中有群主(Manager类)和多名普通成员(Member类),现群主大方给成员发红包.红包的规则:群主发一笔金额,从群主余额中扣除,红包分配 ...

  9. python红包程序_Python写随机发红包的原理流程

    首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机浮点数通过下面的图简单看下: ...

最新文章

  1. Struts2+Spring2.5+Hibernate3.1实现登陆示例
  2. 机器学习与统计学的本质差异
  3. : Content type 'text/plain;charset=UTF-8' not supported
  4. Codeforces Round #720 (Div. 2) C. Nastia and a Hidden Permutation 交互
  5. BootStrap笔记-popover的使用(popover中放验证码,点击更新)
  6. 华三交换机配置access命令_H3C交换机配置命令大全
  7. 解封装(二):初始化解封装avformat_open_input,各参数分析,以及简单流程
  8. Python学习入门基础教程(learning Python)--6 Python下的list数据类型
  9. 安卓使用videoview进行音频、视频播放,及播放控制
  10. apt update时出现签名无法验证,公钥失效的解决办法
  11. Mathematica处理高斯光束的分布图像
  12. opporeno怎么刷鸿蒙系统,opporeno老是提示更新系统
  13. 如何在 Kubernetes 集群中集成 Kata
  14. 幅频特性曲线protues_幅频特性曲线Matlab编程
  15. android动态指示箭头,自定义选项卡指示器(箭头向下指示器)
  16. 销售订单(Sales Order)流程
  17. k8s的namespace资源一直terminating问题解决
  18. C++设计模式8--装饰模式 Decorator --动态的增减功能
  19. java中关于json传图片的方法
  20. windows文件服务器高可用,通过 Windows Server 2012 构建高可用性的文件服务器

热门文章

  1. 同步和异步有什么区别?
  2. 基础理论知识复习(中)
  3. ElasticSearch特点|B+Tree|lucene倒排索引结构|lucene与elasticsearch的关系|基本概念
  4. windows安装docker desktop以及配置
  5. wex5链接mysql_WeX5通过Baas服务访问数据库
  6. CSS中 字体大小随屏幕大小自适应变化
  7. 清华美院「后羿雕塑」像外国人,引全网争议.....
  8. IDEA使用教程之debug基本操作(二)
  9. 大数据智慧出行开发第一周:智慧出行底层数据架构剖析纵览全局
  10. Redis 基础 -- 有序集合 SortedSet类型 和 SortedSet类型的常用命令