Python语⾔程序设计基础(第⼆版)P93答案⽰例
滑块轴承ag5P93程序练习题代码⽰例
3.1 重量计算。⽉球上物体的体重是在地球上的16.5%,假如你在地球上每年增长 0.5 kg,编写程序,输⼊未来⼗年你在地球和⽉球上的体重状况。⽰例:
#重量计算
weight =int(input("请输⼊你的体重(kg):"))
s =0.5#定义初始值每次都增长 0.5 KG
springmvc导入配置文件#⼗年后
for i in range(10):
#持续增加0.5KG体重
weight = weight + s
print("在地球体重是:{:.2f}kg".format(weight))
print("在⽉球体重是:{:.2f}kg".format(weight*0.165))
3.2 天天向上续。尽管每天坚持,但⼈的能⼒发展并不是⽆限的,它符合特定的模型。假设能⼒增长值符合如下带有平台期的模型:以7天为周期,连续学习三天能⼒值不变,从第四天开始⾄第七天能⼒增长为前⼀天的1%。如果七天有⼀天间断学习,则从头计算。请编写程序代码:如果初始能⼒值为1,连续学习365天后的能⼒值是多少?代码如下:(此题太难理解了,苦死⼩⽩)
import random
power =1#初始能⼒值
unity3d都去哪里接私活# 能⼒增长值
dayup =0.01
#周期数起始 = 0。每执⾏完七天就算⼀个周期。
week =0
for i in range(365):
# 连续学习三天能⼒值不变
if i%7in[0,1,2]:
pass
# 从第四天开始⾄第七天每天能⼒增长为前⼀天的百分之1
if i%7in[3,4,5,6]:
power = power *(1+ dayup)
#如果i%7为6,则周期数+1
if i%7in[6]:
week +=1
#如果七天⾥有⼀天间断学习则周期从头计算
print('连续学习365天后的能⼒值为{:.3f}'.format(power))
print('连续周期数为{}'.format(week))
3.3 天天向上续。采⽤3.2模型。如果初始能⼒值为1,固定每⼗天休息1天,365天后的能⼒值是多少呢?每⼗五天休息⼀天呢?代码:(此题感谢教师的指导,还是学到了很多。加油。)
n =0.01# 能⼒增长值
off =[10,15]# 每⼗天休息⼀次,每⼗五天休息⼀次
for k in off:
capacity =1# 初始能⼒值(可迭代)
j =0# 天数
for i in range(365):
if i % k !=0:# 前9天 and 前14天
if(i -(k +1)* j)%7not in[1,2,0]:
阿克曼函数递归算法capacity = capacity *(1+ n)# 能⼒值每次增长0.01
else:# 否则能⼒不增长
capacity = capacity
else:
j +=1# 天数+1,但是能⼒值并不会增长!
capacity = capacity # 休息的时候能⼒值不变的
print("Rest every {} days, capacity is: {:.2f} after 365 days.".format(k, capacity))
3.4 回⽂数判断。设n是任意⾃然数,如果n的各位数字反向排序所得⾃然数与n相等,则n被称为回⽂数。 从键盘输⼊⼀个五位数,请编写程序判断这个数字。 代码⽰例:
n =input("请随机输⼊⼀个五位数的数字:")
if n[4]== n[0]and n[3]== n[1]:
print("是回⽂数")
else:
print("不是回⽂数")
回⽂数判断。解法⼆:(已了解)
def is_palindrome(num):
"""判断⼀个数是不是回⽂数"""
temp = num
total =0
while temp >0:
total = total *10+ temp %10
temp //=10
return total == num
3.5 ⽤print()函数输出⼀个⽥字格。⽰例:curriculum什么意思
#⽥字格效果
小白学python买什么书s =("+ "+"—— "*4)*2+"+\n"#top
s1 =("| "+" "*12)*3+"\n"#body
print(s+s1*4+s+s1*4+s)
3.6 打印如下形式的进度条。⽰例:
import sys,time
text ='Starting ...Done!'
for i in range(len(text)):
sys.stdout.write('%s%s%s%.2f%%'%(text[:i+1],'>'*(2),' '*(17-i),(i+1)*100/17))
# sys.stdout的形式就是print的⼀种默认输出格式
sys.stdout.write('\n')
time.sleep(0.3)
3.7. ⽂本风格。将以下代码保存为⽂件,在终端打开。可以看到⼏个符号的刷新变化。
while True:
for i in['/','-','|','\\','|']:
print('%s\r'% i,end='')
如果有⽰例有需要改正优化之处,留下宝贵意见。感谢。
加油!希望可以成为合格的程序猿吧!
晚安!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论