我正在尝试编写一个程序,将数字从1累加到n。我设法让它多次打印数字,但并没有全部添加。它继续只是将两个数字相加。
我的第一次尝试是:
def problem1_3(n):
my_sum = 0
# replace this pass (a do-nothing) statement with your code
while my_sum <= n:
my_sum = my_sum + (my_sum + 1)
print()
print(my_sum)
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
我不明白为什么每个人都让一切变得复杂。这是我的简单解决方案
n = int(input())
print(n * (n + 1) // 2)
Run Code Online (Sandbox Code Playgroud)
您可以用一行完成此操作,在该行中创建从0to到整数的列表,n并使用sum函数将所有元素求和
def problem1_3(n):
return sum(range(n+1))
Run Code Online (Sandbox Code Playgroud)
小智 3
您的代码中需要 2 个不同的变量 - 一个变量,您可以在迭代这些值并将它们相加时存储总和(我的代码中的 my_sum),另一个变量(我的代码中的 i)用于迭代从 0 开始的数字到 n.
def problem1_3(n):
my_sum = 0
i=0
#replace this pass (a do-nothing) statement with your code
while i <= n:
my_sum = my_sum + i
print(my_sum)
i+=1
return my_sum
Run Code Online (Sandbox Code Playgroud)
您在代码中使用 my_sum 变量来存储总和并迭代数字。
| 归档时间: |
|
| 查看次数: |
18718 次 |
| 最近记录: |