【问题描述】有一个定义在自然数上的函数 f(x) 定义如下:
若 x <5 , 则 f(x) = x;
若 5<=x<15, 则 f(x) = x+6;
若 x>=15, 则 f(x) = x-6。
试编写该函数,输入x值,返回相应的f(x)值。
【输入形式】输入的一行表示自然数x。
【输出形式】输出的一行表示计算结果f(x),若输入的数据不合法(如:负整数),输出“illegal input”。
【样例输入】4
【样例输出】4
“””
n=eval(input())
def fun(x):
out=0
if x<5:
out=x
elif x<15 and x>=5:
out=x+6
elif x>=15:
out=x-6
return out
if not(n>=0):
print("illegal input")
else:
print(fun(n))
”””
【问题描述】
假设现在有N个人,第一个人3岁,第二个人x岁(未知),第三个人的年龄是前两个人年龄之和,以此类推直到第N个人。尝试编写递归函数,当输入第2个人的年龄(x)和总人数(N)时,逆序输出所有人的年龄组成的列表。注:当其中第M个人的年龄大于120岁时,输出"Larger than 120!"和前M-1个人的年龄的逆序列表。
【输入形式】
在一行内分别输入x和N,用逗号隔开
【输出形式】
逆序输出N个人的年龄组成的列表。当其中第M个人的年龄大于120岁时,输出"Larger than 120!"和前M-1个人的年龄的逆序列表。
【样例输入1】
6,4
【样例输出1】
[15, 9, 6, 3]
【样例输入2】
80,9
【样例输出2】
Age 4 is larger than 120!
[83, 80, 3]
【样例说明】
【评分标准】
“””
x,n=map(eval,input().split(','))
ls=[3,x]
def fun(x,n):
tem=ls[-1]+ls[-2]
ls.append(tem)
if(n==3):
return 0
else:
fun(ls[-1],n-1)
fun(x,n)
flag=False
if ls[-1]>120:
flag=True
ls.reverse()
index=0
if flag==True:
for i in range(len(ls)):
if ls[i]>120:
index=n-i
# print("--"+str(index))
print("Age {} is larger than 120!".format(index))
print(ls[-index+1:])
else:
print(ls)
”””
写一个函数isPrime(n)用于判断一个数字n是不是素数,用户输入一个正整数,在一行内输出不大于该数的所有素数,各数后面用一个空格分隔。
【输入形式】
输入一个正整数
【输出形式】
不大于该数的所有素数,各数后面用一个空格分隔。
【样例输入】
100
【样例输出】
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
【样例说明】
【评分标准】
“””
def isprime(n):
flag=True
for i in range(2,n):
if n%i==0:
flag=False
break
return flag
n=eval(input())
for i in range(2,n):
if isprime(i):
print(i,end=' ')
”””