python 1 找素数 2 换零钱

1 找出[0 100]内的全部素数。

a = []

for x in range(0,101):
    if x<2:
        continue
    for i in range(2,x//2+1):
        if x%i == 0:
            break
    else:
        a.append(x)
print("[0,100]内的全部素数",a)

运行结果:[0,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]

2 将100元钱换成1元、5元和10元的纸币总有多少种方法

s = [10,5,1]
money=100
sum = 0
print("兑换方案如下:(分别为%d元 %d元 %d元)" %(s[0],s[1],s[2]))
for x in range(money//s[0]+1):
    for y in range(money//s[1]+1):
        for z in range(money//s[2] + 1):
            if s[0]*x+s[1]*y+s[2]*z==money :
                sum+=1
                print(x,y,z)
print("总共有多少种方法:",sum)

运行结果:

兑换方案如下:(分别为10元 5元 1元)
0 0 100
0 1 95
0 2 90
0 3 85
0 4 80
0 5 75
0 6 70
0 7 65
0 8 60
0 9 55
0 10 50
0 11 45
0 12 40
0 13 35
0 14 30
0 15 25
0 16 20
0 17 15
0 18 10
0 19 5
0 20 0
1 0 90
1 1 85
1 2 80
1 3 75
1 4 70
1 5 65
1 6 60
1 7 55
1 8 50
1 9 45
1 10 40
1 11 35
1 12 30
1 13 25
1 14 20
1 15 15
1 16 10
1 17 5
1 18 0
2 0 80
2 1 75
2 2 70
2 3 65
2 4 60
2 5 55
2 6 50
2 7 45
2 8 40
2 9 35
2 10 30
2 11 25
2 12 20
2 13 15
2 14 10
2 15 5
2 16 0
3 0 70
3 1 65
3 2 60
3 3 55
3 4 50
3 5 45
3 6 40
3 7 35
3 8 30
3 9 25
3 10 20
3 11 15
3 12 10
3 13 5
3 14 0
4 0 60
4 1 55
4 2 50
4 3 45
4 4 40
4 5 35
4 6 30
4 7 25
4 8 20
4 9 15
4 10 10
4 11 5
4 12 0
5 0 50
5 1 45
5 2 40
5 3 35
5 4 30
5 5 25
5 6 20
5 7 15
5 8 10
5 9 5
5 10 0
6 0 40
6 1 35
6 2 30
6 3 25
6 4 20
6 5 15
6 6 10
6 7 5
6 8 0
7 0 30
7 1 25
7 2 20
7 3 15
7 4 10
7 5 5
7 6 0
8 0 20
8 1 15
8 2 10
8 3 5
8 4 0
9 0 10
9 1 5
9 2 0
10 0 0
总共有多少种方法: 121

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值