首页 > 编程语言 >利用列表编写一个发红包程序,要求输入红包金额money,红包个数n,显示由每个红包的金额所构成的列表。

利用列表编写一个发红包程序,要求输入红包金额money,红包个数n,显示由每个红包的金额所构成的列表。

时间:2024-04-10 22:30:56浏览次数:22  
标签:红包 0.01 money 浮点数 random 金额 列表 uniform

声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

【第7次课]实验五组合数据类型(一)
4.简答题
利用列表编写一个发红包程序,要求输入红包金额money,红包个数n,显示由每个红包的
金额所构成的列表。
程序运行输出格式参考下图:

[提示]
(1)可以使用random库中的函数。例如:random.uniform(a,b)是Python中的random模块的一个函数,用于生成一个在[a,b)范围内的随机浮点数。其中,参数a是范围的下限,参数b是范围的上限。例如,random.uniform(0.01,10)将返回一个在[0.01,10)范围内的随机浮点数,可能是0.01、5.678、9.99等。

from random import uniform

amounts = []
money = float(input("请输入红包金额(元): "))  # 确保从用户那里获取总金额,并将其转换为浮点数
print(int(money),"\n")
n = int(input("请输入红包个数: "))
print(n)

if n <= 0 or money<=0:
    print("红包金额或个数必须大于0!")
elif money/n<0.01:print("红包总金额至少应达到每个红包0.01元!")
else:
    # 计算最后一个红包的金额
    last_red_packet = money - (n - 1) * 0.01
    for i in range(n):
        remaining_money = money - sum(amounts)
        max_amount = min(remaining_money, round(remaining_money / (n - i), 2))
        amount = round(uniform(0.01, max_amount), 2)
        amounts.append(amount)
        money -= amount  # 更新剩余金额
    amounts.append(last_red_packet)  # 添加最后一个红包金额
    print("随机红包金额列表:\n", amounts)

标签:红包,0.01,money,浮点数,random,金额,列表,uniform
From: https://blog.csdn.net/skhoole/article/details/137613696

相关文章

  • 自定义Python实用函数-返回指定目录及其子目录和指定文件扩展名的文件清单列表
    importosdefget_files(file_path,image_types_set=()):"""返回指定目录及其子目录下、指定文件扩展名的文件清单列表。若image_types_set参数为空,则返回图片文件清单列表。若image_types_set参数为['.*'],则返回所有文件清单列表。"""filenames......
  • 展开嵌套列表
    模拟数据data=[[1,2,6],[4],[5,8,7],[11,9],[10]]#模拟数据方式1:for循环fromcollections.abcimportIterablesum_data=[]foriindata:ifisinstance(i,Iterable):#如果可迭代(比如列表形式)forjini:#再次循环追加元素s......
  • 安防视频监控/视频集中存储EasyCVR平台开启鉴权后设备列表不展示是为什么?
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,EasyCVR基于云边端一体化架构,具有强大的数据接入、处理及分发能力,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、云台控制、语音对讲、智能AI分析接入等功......
  • css学习笔记之展开列表图标动画
    “蓝色界面”风格的填充的星图标欢迎下载填充的星矢量图标,“蓝色界面”风格。格式有png、svg、pdf、html代码。可对填充的星图标、符号进行修改、调整大小、修改颜色。https://igoutu.cn/icon/y0OTcruih2CY/%E5%A1%AB%E5%85%85%E7%9A%84%E6%98%9F今天在这个网站看到了上面类似......
  • Python基础--python数据结构(字符串、列表和元组)
    前言!!!注意:本系列所写的文章全部是学习笔记,来自于观看视频的笔记记录,防止丢失。观看的视频笔记来自于:哔哩哔哩武沛齐老师的视频:2022Python的web开发(完整版)入门全套教程,零基础入门到项目实战数据结构1.字符串类型str1.1定义上个文件找1.2独有功能大写upper......
  • 导出和导入UEFI启动项列表,您可以使用 bcdedit 命令,并结合使用输出重定向来实现
    导出和导入UEFI启动项列表,您可以使用bcdedit命令,并结合使用输出重定向来实现。以下是一个示例批处理脚本,演示如何导出和导入UEFI启动项列表:导出UEFI启动项列表[email protected]/enumfirmware>UEFI_boot_entries.txt......
  • 文档操作&异常捕获&列表、字典推导式
    【零】文档操作【1】读和写(覆盖写和追加写)#r(read):只读模式#将数据一次性全部读出#w(write):只写模式#如果文件存在则打开文件,并将文件内荣清空然后写入新的内容#如果文件不存在则新建文件,并写入新的内容#a(append):追加写模式#如果文件存在则打开文件,而......
  • 爬虫必备User-Agent列表
    user_agent=["Mozilla/5.0(Macintosh;U;IntelMacOSX10_6_8;en-us)AppleWebKit/534.50(KHTML,likeGecko)Version/5.1Safari/534.50","Mozilla/5.0(Windows;U;WindowsNT6.1;en-us)AppleWebKit/534.50(KHTML,likeGec......
  • CommMonitor列表视图有什么功能特性?
    CommMonitor列表视图有什么功能特性?列表视图主要展示IRP的基本属性,有串口数据包序号、时间、进程、COM口、IRP功能、数据长度、数据(hex)、字符串、备注。包序号:按内核监控驱动取得的数据包的索引,索引号是按开始停监控开如计数,停止监控清0,升序增加;时间:有两种记录方式,根据通用......
  • 列表、字典推导式
    列表推导式固定语法:[表达式foriinlist/dict...判断语句][if语句foriinlist/dict...][字符串处理foriinlist/dict...]name_list=['a','b']name_new=['nb_'+iforiinname_list]print(name_new)字典推导式固定语法:[key:value......