gpt4 book ai didi

python - 1 到 n 的整数之和

转载 作者:行者123 更新时间:2023-12-02 11:42:54 25 4
gpt4 key购买 nike

我正在尝试编写一个程序来将 1 到 n 的数字相加。我已经设法让它多次打印数字,但不能将它们全部相加。它继续将两个数字相加。

我的第一次尝试是:

def problem1_3(n):
my_sum = 0
while my_sum <= n:
my_sum = my_sum + (my_sum + 1)
print()
print(my_sum)

如何解决这个问题?

<小时/>

有关此问题的递归版本,请参阅 Recursive function to calculate sum of 1 to n?

最佳答案

根本不需要循环。您可以使用 triangular number formula :

n = int(input())
print(n * (n + 1) // 2)
<小时/>

关于除法 (//) 的注释(在 Python 3 中):如您所知,there are two types of division operators in Python 。简而言之,/ 将给出浮点结果,// 将给出 int。在这种情况下,我们可以使用这两个运算符,唯一的区别是返回的类型,而不是值。自 multiplying an odd with an even always gives an even number ,除以 2 将始终是一个整数。换句话说 - n*(n+1)//2 == n*(n+1)/2 (但其中一个是 x ,另一个是 >x.0,分别)。

关于python - 1 到 n 的整数之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43901484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com