我正在尝试创建一个程序,允许用户选择他们想要输入的数字,然后比较用户输入的所有值,以找出哪些最大的数字。出于某种原因,它似乎只是比较输入的最后两个值,我无法弄清楚我的逻辑出错的地方。
def number_of_inputs():
n = input("how many n values would you like ");
values = [];
a = 0;
n = int(n);
for a in range (n):
c= int(input("Enter a value "));
values.append(c);
a=a+1;
b = sum(values)
largest_num(values,n,b);
def largest_num(values,n,b):
a = 0;
start = 0;
for start in range(n):
for a in range (n):
if((values[start])-(values[a])>0):
largest = values[start]
a = a+1;
print(largest);
number_of_inputs();
答案 0 :(得分:0)
假设您只需要最大的数字,请删除不需要的代码。这里不需要嵌套循环。将您的功能更新为:
def largest_num(values,n,b):
a = 0;
start = 0;
for i in range(n - 1):
if(values[i+1] > values[i]:
largest = values[i+1]
else:
largest = values[i]
print(largest)
您可以使用内置max()
作为:
>>> max([1, 5, 2, 10, 4])
10