PTA 浙大版《Python 程序设计》题目集第四章1-7题

第4章-1 生成3的乘方表

n=int(input())
i=0
while  i<=n:
    print("pow({:d},{:d}) = {:d}".format(3,i,3**i))
    i+=1

第4章-2 统计素数并求和 

n,m=map(int,input().split(" "))
flag=False
sum=0
count=0
for i in range(n,m+1):
    if i==1:
        continue
    t=False
    for j in range(2,int(i**0.5+1)):
        if i%j==0:
            t=True
            break
    if not t:
        count+=1
        sum+=i
     #   print(i)
print("{:d} {:d}".format(count,sum))

第4章-3 猴子吃桃问题 

list=[0 for x in range(0,11)]
list[1]=1
for i in range(2,11):
    list[i]=2*list[i-1]+2
n=int(input())
print(list[n])

第4章-4 验证“哥德巴赫猜想”

def judge(num):
    if num==1:
        return 1
    elif num==2 or num==3:
        return 0
    else:
        for i in range(2,int(num**0.5+1)):
            if num%i==0:
                return 1
        return 0
n=int(input())
if n==4:
    print("4 = 2 + 2")
else:
    for i in range(3,n,2):
       #print(i)
        if judge(i)==0 and judge(n-i)==0:
            print("{:d} = {:d} + {:d}".format(n,i,n-i))
            break

第4章-5 求e的近似值

n=int(input())
sum=1.0
ans=1.0
i=1
while i<=n:
    sum*=i
    ans+=1.0/sum
    i+=1
print("{:.8f}".format(ans))

第4章-6 输出前 n 个Fibonacci数

n=int(input())
if n<1:
    print("Invalid.")
else:
    list=[0 for i in range(0,50)]
    list[1]=1
    list[2]=1
    for i in range(3,n+1):
        list[i]=list[i-2]+list[i-1]
    for i in range(1,n+1):
        if i%5==0:
            print("{:>11d}".format(list[i]))
        else:
            print("{:>11d}".format(list[i]),end="")
    if n%5!=0:
        print()

第4章-7 统计学生平均成绩与及格人数 

n=int(input())
if(n==0):
    print('average = 0.0')
    print('count = 0')
    exit(0)
count=0
sum=0.0
list=input().split(" ")
for i in range(0,n):
    a=int(list[i])
    sum+=a*1.0
    if a>=60:
        count+=1
print("average = {:.1f}".format(sum/(n*1.0)))
print("count = {:d}".format(count))

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值