python的应用
请将1000个学生随机分到30个班级里,每个班级人数不能超过34人,输出分配结果。
格式示例为: 1班30人,名单为……
用python编个程序 用随机数不就行了 不知道你说的名单是什么:
def func(number_of_persons: int, class_: int):
MAX = 34
div_ = number_of_persons // class_
remainder = number_of_persons % class_
if remainder > MAX:
return False
return True _2_ 发表于 2020-5-6 15:37
不知道你说的名单是什么:
{:10_277:}好好看看题 zltzlt 发表于 2020-5-6 15:38
好好看看题
不看题,随便写{:10_256:} zltzlt 发表于 2020-5-6 15:38
好好看看题
所以,怎么写?{:10_266:} 本帖最后由 sunrise085 于 2020-5-6 15:49 编辑
import random
stu_num=1
stu_class=dict()
while stu_num<1001:
temp=random.randint(1,30) #随机一个班级
if temp in stu_class: #若班级已经有人
if len(stu_class)<34:#若班内人数没超过34人
stu_class.append(stu_num) #将该同学分配带这个班级
stu_num+=1 #下一位同学
else: #若这个班级还没有人
stu_class.setdefault(temp,)#创建这个班级并把该同学分配到这个班级
stu_num+=1 #下一位同学
for key in stu_class:
print("班级号:",key,"学生人数:",len(stu_class))
print("学生学号:",stu_class) _2_ 发表于 2020-5-6 15:37
不知道你说的名单是什么:
就是生成一个第几班多少人,一个班人数不能超过34人,而且生成随机数相加等于1000 sunrise085 发表于 2020-5-6 15:43
写的很好,但是人数好像超1000人了{:10_257:} haoge404407 发表于 2020-5-6 15:47
写的很好,但是人数好像超1000人了
你再好好看看,人数怎么超1000人了? sunrise085 发表于 2020-5-6 15:43
等等,不好意思看错了,对的对的 {:9_227:}
页:
[1]