编写一个程序,让用户输入一个整数N,然后打印前N个奇数的总和。例如,如果用户输入4,则应打印前4个奇数的总和为16.(因为1 + 3 + 5 + 7 = 16)请注意,用户输入的数字显示为输出的一部分。[ 10分]
下面的代码就是我遇到的问题。
n = int(input('Enter the Number of Odd Integers:'))
firstNum = 1
for i in range(n-2):
temp = firstNum
secondNum = temp + 2
firstNum = secondNum
print('The Sum:', (secondNum))
我知道你应该结束,__奇数的总和是__。
所以第一个空白是输入,第二个是总和,但我不知道如何把它们放在句子中这样回答。
答案 0 :(得分:0)
您想使用for
循环:
num = int(raw_input('How high do you want the diamond to be? ')) #To get input
for i in range(1, num+1): #For loop to loop through numbers
print ' '*(num-i)+'* '*i #Print the indent first, and then the stars for the diamond
for i in range(1, num+1): #Second for loop for other half of diamond
print ' '*(i)+'* '*(num-i) #Print the indent first, and then the stars for the diamond
运行如下:
bash-3.2$ python diamond.py
How high do you want the diamond to be? 5
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
bash-3.2$ python diamond.py
How high do you want the diamond to be? 21
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
bash-3.2$ python diamond.py
How high do you want the diamond to be? 7
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
bash-3.2$
答案 1 :(得分:0)
对于第一个问题,您没有将奇数加在一起,而只是增加了secondNum的值。相反,您希望将它们全部添加在一起。
可爱的版本
>>> def f():
n = int(input('Enter N: '))
print(sum(range(1,2*n,2)))
>>> f()
Enter N: 4
16
>>> f()
Enter N: 3
9