Python应用程序协助

问题描述 投票:0回答:2

我的项目的要求如下:

•创建一个将在1到100之间循环的Python应用程序

•数字将与它们的平方值一起打印出来

•当平方值达到200或更大时,应用程序应停止

•重新配置应用程序以根据需要获取用户值。例如,如果您要输入值8(请勿使用此值),则您的应用程序将产生从1到8的所有平方值。

这是我到目前为止所拥有的,

** def sq_nos(start, end): for i in range(start, end): j = i**2 print(i, j) if j > 200: break start = int(input("enter start: ")) end = int(input("enter end: ")) sq_nos(start, end)**

此代码仍在打印平方值255,有什么解决方法吗?

也将提供任何其他反馈。

python loops if-statement variables
2个回答
0
投票
我认为您需要检查并中断打印。尝试使用此代码。

def sq_nos(start, end): for i in range(start, end): j = i**2 if j > 200: break print(i, j) #start = int(input("enter start: ")) #end = int(input("enter end: ")) sq_nos(1, 100)

并且输出为

1 1 2 4 3 9 4 16 5 25 6 36 7 49 8 64 9 81 10 100 11 121 12 144 13 169 14 196


-1
投票
您必须在打印平方值之前进行测试。因此:

def sq_nos(start, end): for i in range(start, end): j = i**2 if j> 200 : break else: print(i,j)

但是要解决分配问题,我不知道您为什么要输入起始值。您只需要询问平方值的极限即可。因此,以下内容将是正确的:

def sq_nos(limit ): for i in range(1, 100): if i**2 > limit: return else: print(i,i**2) limit = int(input("enter the limit of the squared value: ")) sq_nos(limit )

© www.soinside.com 2019 - 2024. All rights reserved.