1:题目:
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
def f(n):
f1,f2,f3=1,2,3
if n<=3:
return n
else:
for i in range(3,n):
fn = f3 + f1
f1,f2,f3=f2,f3,fn
return fn
while True:
n=int(input())
if n==0:
break
print(f(n))
解析:其实对于这种题,用画板画一下就欧克了,画的有一点丑,请勿见怪!
手工方法来解决:第一年有一头,第二年有二头,
以此类推,我们可以手工得到一个列表:
由此列表我们可以看出f4 = f1 + f3 = 4 ; f5 = f2 + f4 = 6; f6 = f3 + f5 = 9; f7 = f4 + f6 = 13; f8 = f5 + f7 = 18;
2:题目:
This is the first problem for test. Since all we know the ASCII code, your job is simple: Input numbers and output corresponding messages.
翻译:这是测试的第一道题。因为我们都知道ASCII码,所以你的工作很简单:输入数字并输出相应的消息。
import sys
while True:
line = sys.stdin.readline()
if not line:
break
for _ in line.split():
print(chr(int(_)),end='')
解析:python3中使用 sys.stdin.readline()可以实现标准输入,需要调用sys库,sys.stdin是一个标准化输入的方法,其中默认输入的格式是字符串,如果是int,float类型则需要强制转换。
3:题目
用筛法求之N内的素数。
N = eval(input())
for i in range(2,N):
for j in range(2,i):
if i % j ==0:
break
else:
print(i)
解析:
函数用法说明:
用法一:range(m)
输出: [0,1,...,m-1](从0到m-1的一个list,不包括m)
示例:
用法二:range(m,n),m
输出:[m,m+1,..,n-1](从m到n-1的一个list,不包括n)
示例:
用法三:range(m,n,k)
输出:[m,m+k,m+2k,....](从m开始,间隔为k的一个list,不包括n)
示例:
新手路过,如果有错误,大佬请指正,不喜勿喷,点×跳过就好!
每个人应该都不应该给别人那么多要求,给点鼓励,少点嘲讽!谢谢!