列表中10的倍数
我目前正在初级 CS 课程中做作业,只需要一点帮助。
他们要求我编写一个程序来读取整数列表并确定它是否有;
- 10 的倍数
- 没有 10 的倍数
- 混合值。
目前它可以正确输出除混合值之外的所有内容。这就是我所拥有的:
n = int(input())
my_list =[]
for i in range(n):
num = int(input())
my_list.append(num)
def is_list_mult10(my_list):
mult10 = True
for i in range(len(my_list)):
if my_list[i] % 10 != 0:
mult10 = False
return mult10
def is_list_no_mult10(my_list):
no_mult10 = True
for i in range(len(my_list)):
if my_list[i] % 10 != 1:
no_mult10 = False
return no_mult10
if is_list_no_mult10(my_list) == True:
print("no multiples of 10")
elif is_list_mult10(my_list) == True:
print("all multiples of 10")
else:
print("mixed values")
I am currently doing an assignment in my intro level CS class and just need a smidge of help.
They are asking me to write a program that reads a list of integers and determines if it has;
- multiples of 10
- no multiples of 10
- mixed values.
It currently correctly outputs everything but mixed values. This is what I have:
n = int(input())
my_list =[]
for i in range(n):
num = int(input())
my_list.append(num)
def is_list_mult10(my_list):
mult10 = True
for i in range(len(my_list)):
if my_list[i] % 10 != 0:
mult10 = False
return mult10
def is_list_no_mult10(my_list):
no_mult10 = True
for i in range(len(my_list)):
if my_list[i] % 10 != 1:
no_mult10 = False
return no_mult10
if is_list_no_mult10(my_list) == True:
print("no multiples of 10")
elif is_list_mult10(my_list) == True:
print("all multiples of 10")
else:
print("mixed values")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
函数
check_multiplier
索引my_list
的所有元素,并将布尔值保存到is_10_multipliper
中。然后检查is_10_multipliper
的总和,如果所有项目均为true
,则总和是传递的列表的相等长度,如果所有内容都是false
,则总和为0 。Function
check_multiplier
indexing all elements frommy_list
and saves booleans intois_10_multiplier
. Then checks the sum ofis_10_multiplier
, if all items areTrue
then sum is equal length of passed list, if all areFalse
then sum is 0.如评论中所述,您的代码中有几个错误(返回语句在for Loop内部)。
另外,逻辑似乎有点太复杂了:)无需拥有2个单独的功能,您可以尝试:
As mentioned in the comments, you have a couple of errors in your code (the return statements are inside the for loop).
Also, the logic seems a little too complicated :) No need to have 2 separate functions, you can try:
我看到您已经完成了一些逻辑和句法错误,如评论中所述。
以下是您修改的代码:
它成功打印了正确的语句。但是,我建议您尝试优化您的程序。
I see you have done some logical as well as syntactic error, as mentioned in the comments also.
Below is your modified code :
It successfully prints the correct statement. However I'll suggest you to try to optimise e your program.