2019年5月12日,大二下python作业1
Question 1) Create a program that asks the user for a number and then prints out a list of all the divisors of that number. (A divisor is a number that divides evenly into another number. For example, 13 is a divisor of 26 because 26 / 13 has no remainder.)
Question 2) Write a program to define a function that asks the user to input how many Fibonnaci numbers to generate and then generates them. (Hint: The Fibonnaci sequence is a sequence of numbers where the next number in the sequence is the sum of the previous two numbers in the sequence. The sequence looks like this: 1, 1, 2, 3, 5, 8, 13, …)
针对问题1,我编写如下程序。
s=input('give me an number')
divisors=[]
for x in range(1,s/2):
if s%x==0:
divisors.append(x)
x+=1
print(divisors)
出现报错unsupported operand type(s) for /: 'str' and 'int'
原因是input只能输入string,而string不能用于除法操作。
而代码for x in range(1,s/2):
也有错,应该改为for x in range(1,int(s/2)):
这说明range中不能出现浮点数。