【问题标题】:Using random function to find "cut off" values on python使用随机函数在 python 上查找“截止”值
【发布时间】:2015-06-20 20:31:26
【问题描述】:

我需要帮助解决这个问题,我认为我不知道该怎么做的主要原因是因为我真的不明白它的要求。

问题是要求编写一个程序来找到一个类的曲线。它必须找到 A、B、C 和 D 的“截止”值。40% 的班级将获得 A,以及 B(40%),10% 将获得 C,其余 10%将获得 D。 成绩必须在 20 - 100 之间随机生成,并且必须输入学生人数。必须返回一个元组,其中包含 A、B、C 和 D 的截止值。

它也给了我使用 list.sort() 和 min(list) 的提示

老实说,我真的不明白这是要什么,到目前为止我有这个但我不确定我在做什么。

import random
def Cutoffgrade():
    students=float(input('How many students are in the class?'))
    grades=list(range(20,101))
    list.sort(grades)
    Astudents=students*0.4
    Bstudents=students*0.4
    Cstudents=students*0.1
    Dstudents=students*0.1

我也有这个我做的其他功能,我知道这与我必须做的类似,但我只是没有遇到这个问题。 这是我为另一个问题所做的另一个函数,它在某种程度上也要求随机列表:

def createlist(v1,v2):
    random.randint(v1,v2)
    random.randrange(v1,v2)
    numlist=[]
    for i in range(5):
        n=random.randrange(v1,v2)
        numlist.append(n)
    print(numlist)

所以我一直在尝试将此功能转换为新问题所需的功能,但不知道如何。

【问题讨论】:

  • 与其在互联网上随便找人问,不如和你的教授谈谈来澄清问题?
  • 你没有得到什么?前 40% 的学生接下来的 40% 获得 B,依此类推。生成随机成绩的方式也不是随机的。
  • 我已经尝试给她发邮件,但她没有回复我的邮件。

标签: python list random


【解决方案1】:

由于这是一个家庭作业问题,我想你的教授不太可能在周末回复你,我会给你一些如何解决这个问题的提示:

  • 首先使用random.randint(start, stop)list comprehension 或标准for 循环构建成绩列表
  • 对列表进行排序。
  • 确定每个年级应该有多少学生。
  • 将列表切成适当的块并找到每个列表的min()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 2018-08-06
    相关资源
    最近更新 更多