python 2.7.6数学程序

时间:2014-02-19 05:42:32

标签: python-2.7

好的,我需要帮助的程序可能并不复杂,但我对此感到困惑。以下是我的指示:

编写一个程序,要求用户输入一个整数,然后计算出必须加总的整数(从1开始),以使总数大于用户输入的值。也就是说,找到数字“n”,使得从1到n的整数之和大于用户输入的值,但从1到(n-1)的整数之和小于或等于用户输入的值。您的输出应该是描述性消息,包括数字n和从1到n的数字之和;类似的东西:

请输入一个整数:1000 将整数从1到45求和得到1035

我已经走到这一步了:      inp = input('请输入一个整数。') 如果你能指出我正确的方向,这将是伟大的。 编辑:

我怎样才能打印出来?

编辑:

我试图将下面的答案改为:

n = input ('Please enter an integer. ')
sum = 0
i = 1
while sum < n:
    sum = i
    i + 1 = i
if sum > n:
    print 'Summing the integers from 1 to ' + i + 'gives' + sum

我收到一条错误,指出我无法在第六行分配给运营商

1 个答案:

答案 0 :(得分:0)

有明显的方法和更聪明的方法 显而易见的方法是添加数字直到它们更大:

sum = 0
i = 1
while sum < inp:
    sum += i
    i += 1

数字1到n的总和由n *(n + 1)/ 2给出,所以你可以求解给定的inp你可能想要正根