循环和浮点数

时间:2018-12-08 17:36:05

标签: python

我正在参加在线基础编程课程,但我完全迷失了这项作业。我们的书介绍了基本的循环,但没有介绍如何通过用户输入的值在循环中查找最大值,最小值或平均值。这是我的作业:

编写一个循环控制程序,该程序将提供有关班级成绩的重要统计信息。该程序将利用循环从用户输入中读取五个浮点等级。要求用户输入值,然后打印以下数据:平均最大最小

我的教科书和讲师并未真正指导我如何在循环中使用浮点数。到目前为止,这是我想出的:

for grade in range(5):
    int(input("Enter Grade (percentage): "))
    if max:
        print('Max:')
    if min:
        print('Min:')
else:
    print('Average:')

这使我可以使循环运行5次,但实际上如何计算未知变量的最小值,最大值和平均值?

4 个答案:

答案 0 :(得分:0)

我不使用python,但是我知道如何解决这个问题。

对于平均值,声明一个名为sum或诸如此类的变量,并将其设置为0。然后,每次获得输入时,都将该值添加到sum中。输入5次后,将其总和除以5。即为平均值。

要获得最大值,请将变量初始化为0。在输入时,检查该输入是否大于当前存储的最大值。如果是这样,请将变量设置为该输入。输入5次后,该变量将包含最大值。

类似的分钟。但是请确保在开始时将该变量设置为较大的值(例如100000),然后检查新输入的值是否小于该变量。

此外,如果您应该使用浮点数,请不要将用户输入转换为整数。改用float。

答案 1 :(得分:0)

在循环中使用浮点数的方式与在循环外使用浮点数的方式相同。 循环不会改变任何东西。

但是,您似乎误解了任务措辞: 您不应在循环内 打印最小,最大和平均值计算。

这是不可能的,因为您不知道它们,直到用户输入所有5个等级。

您应该在循环内执行的操作分为4个步骤:

  1. 从用户那里读取float。当前,由于某种原因,您正在尝试阅读int。您知道如何在Python中读取float吗?

  2. 将其加到您将在循环后使用 来计算平均值的总和。

  3. 查看它是否是用户到目前为止输入的所有数字中的最大值。

  4. 查看它是否是用户到目前为止输入的所有数字中的最小值。

退出循环后,只需打印3个数字: 您找到的最大值和最小值以及平均值计算。

答案 2 :(得分:0)

您首先要列出一个列表, 然后创建一个for循环,该循环将运行5次,range(5)应该起作用。 然后退出循环并运行平均值,最小值和最大值

答案 3 :(得分:-1)

您可以为此任务创建一个简单的函数。您可以执行以下操作:

def take_what(statistic = None):
    f = []
    for grade in range(5):
        f.append(int(input("Enter Grade (percentage): ")))

    if statistic == "max":
        print('Max: {}'.format(max(f)))
    elif statistic == "min":
        print('Min: {}'.format(min(f)))
    else:
        print('Average: {}'.format(sum(f)/len(f)))

print(take_what('max'))
print(take_what('min'))
print(take_what())
相关问题