我正在尝试制作一个程序,为您提供输入的平均数,总数和最大数。我被困在最大的部分。我的电话号码不在列表中,所以我不知道如何找到最大的电话号码。
num=0
total=0
average=0
count=0
while True:
num=input("enter a number:")
num=int(num)
if num==-999:
break
total=total + num
count=count+1
biggest = max(total)
average=total/count
#print the results
print("the total is:", total)
print("the biggest number is:", biggest)
print("the average is:", average)
我希望它最后打印最大的数字。
谢谢
答案 0 :(得分:2)
num=0
total=0
average=0
count=0
biggest=0
while True:
num=input("enter a number:")
num=int(num)
if num==-999:
break
total=total + num
count=count+1
if num > biggest:
biggest = num
average=total/count
#print the results
print("the total is:", total)
print("the biggest number is:", biggest)
print("the average is:", average)
答案 1 :(得分:1)
您可以:
if num > biggest:
biggest = num
答案 2 :(得分:0)
使用不能大于任何输入的值初始化最大值:
import numpy
biggest = -np.inf
替换
biggest = max(total)
作者
biggest = max(biggest, num)
答案 3 :(得分:0)
在循环之前初始化变量biggest
:
biggest = -9999
应将其初始化为小于程序将要遇到的任何数字的东西。以上假设-9999是一个数字,这通常是一个错误的假设;有更好的方法可以做到这一点,例如评论之一建议
import sys
biggest = -sys.maxint
这是此实现可以表示的最大整数值的负数。
然后在循环体中,更新变量biggest
:
biggest = max(biggest, num)
如果num
大于biggest
,则max(biggest, num)
将返回num
的值,以便biggest
将获得num
的值。如果较小,则biggest
将保持不变。换句话说,biggest
会记住迄今为止看到的最大值。在循环结束时,它将保持看到的最大值,即周期。
答案 4 :(得分:0)
在这里将您的代码设置为正确
num=0
total=0
average=0
count=0
biggest = None ### added
while True:
num=input("enter a number:")
num=int(num)
if num==-999:
break
total=total + num
count=count+1
#biggest = max(total) Here where was you wrong
if num > biggest : #### added
biggest = num #### added
average=total/count
#print the results
print("the total is:", total)
print("the biggest number is:", biggest)
print("the average is:", average)
答案 5 :(得分:0)
让我为您分享解决问题的方法。 (检查数字为“ -999”后,看看if子句)。随时问您有什么问题!希望对您有帮助
num=0
total=0
average=0
count=0
biggest=0
while True:
num=input("enter a number:")
num=int(num)
if num==-999:
break
if num > biggest:
biggest = num
total=total + num
count=count+1
average=total/count
#print the results
print("the total is:", total)
print("the biggest number is:", biggest)
print("the average is:", average)
答案 6 :(得分:0)
如果您研究其他方法,您将获得更多功能,甚至对程序进行更多操作,请看一下这段代码,并尝试一些想法,以使您的任务和以后的任务变得更容易
>numbers = []
print("Enter any non-number to perform calculations.\n")
while True:
try:
num = int(input("Enter a number: "))
numbers.append(num)
except ValueError:
break
total = sum(numbers)
average = total/len(numbers)
biggest = max(numbers)
print(f"\nThe total is: {total}")
print(f"The biggest number is: {biggest}")
print(f"The average is: {average}")
(xenial)vash@localhost:~/python$ python3.7 biggest.py Enter any non-number to perform calculations. Enter a number: 1 Enter a number: 2 Enter a number: 3 Enter a number: 4 Enter a number: -1 Enter a number: 2 Enter a number: 3 Enter a number: q The total is: 14 The biggest number is: 4 The average is: 2.0