【问题标题】:How to write a program that prompts the user to enter a number n, then prints all even squares between 1 and n [duplicate]如何编写一个程序,提示用户输入一个数字 n,然后打印 1 和 n 之间的所有偶数平方 [重复]
【发布时间】:2017-08-08 05:36:33
【问题描述】:

这是我目前所拥有的:

n=int(input("Enter a number"))

for i in range (1,n+1,):

  if(i%2==0):

    print(i)

例如,如果用户输入 100,程序应该打印以下内容:

4
16
36
64
100

【问题讨论】:

  • 你的缩进全错了。
  • 你能发布回溯吗?缩进是错误的,但可能是你粘贴错了。
  • 不检测一个数是否为正方形,只生成所有的正方形。而且你不需要测试一个数字是否是偶数,因为偶数平方总是偶数的平方。所以只需增加 2 而不是 1。
  • 我尝试增加 2 而不是 1,但没有用

标签: python


【解决方案1】:

python 中的** 运算符充当幂运算符。所以,x-squared 基本上是x**2x**0.5x 的平方根。

n = int(input("Enter a number"))

for i in range(2, n**0.5+1, 2):
    print(i**2)

【讨论】:

  • 使用range(2, n**0.5+1, 2),所以你按2而不是1。然后你不需要测试sqr是否是偶数。
  • 很容易错过,谢谢。
猜你喜欢
  • 2022-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-25
  • 1970-01-01
  • 1970-01-01
  • 2019-11-07
相关资源
最近更新 更多