Python练习三

1. 如果一个正整数等于除它本身之外其它所有除数之和,就称之为完全数。

输出10000以下的完全数

for i in range(1, 10000):
    sum = 0
    for j in range(1, i):
        if i % j == 0:
            sum += j;
    if sum == i:
        print("10000以下的完全数:",i)

结果:

10000以下的完全数: 6
10000以下的完全数: 28
10000以下的完全数: 496
10000以下的完全数: 8128

2. 输入n的值,求出n的阶乘。

s=1
n = int(input("请输入要计算的数:"))
for i in range(1,n+1):
     s=s*i
print("n的阶乘数:",s)

#递归算法

n=int(input("请输入要计算的数:"))
def fact(n):
    if n==0:
        return 1
    else:
        return n*fact(n-1)
print("n的阶乘数:",fact(n))

结果:

请输入要计算的数:9
n的阶乘数: 362880

3.某国现有13亿人口,设每年增长0.8%,编写程序,计算多少年后达到26亿?

people_num = 13
year_count = 0
while 1:
    if people_num>=26:
        break
    people_num=people_num*(1+0.008)
    year_count=year_count+1
print(year_count,"年后达到26亿")

结果:

87 年后达到26亿

4. 求1!+2!+3!+4!+5!的和。

sum=1
count=0
for i in range(1,6):
        sum=i*sum
        count=count+sum
print("1!+2!+3!+4!+5!的和:",count)

结果:

1!+2!+3!+4!+5!的和: 153

5. 图书批发商店的某本书的零售价是26.5元/本,

如果客户一次性购买100本以上(包括100本),则每本的价格打9折,

如果客户一次性购买500本以上(包括500本),则每本的价格打8折并返回1000元给客户,

请分别计算购买8本、150本、600本的应付金额是多少。

要求购买书的数量从控制台输入。

num=int(input("请输入购买的书本数:"))
if num<100:
    total=26.5*num
elif num<500:
    total=26.5*num*0.9
else:
    total=26.5*num*0.8-1000
print("应付:",str(round(total,1)))

结果:

请输入购买的书本数:8
应付: 212.0
请输入购买的书本数:150
应付: 3577.5
请输入购买的书本数:600
应付: 11720.0

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Marylin0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值