Python 第四章 常用内置数据类型

2. (P4-prg2.py)编写程序,格式化输出杨辉三角。杨辉三角即二项式定理的系数表,各元素满足如下条件:第一列及对角线上的元素均为1;其余每个元素等于它上一行同一列元素与前一列元素之和。

提示:可以使用“print("1".center(20))”的语句形式在一行上打印20个字符,并且居中对齐。
 

num = int(input("请输入杨辉三角的行数:"))
while(num<1):
    num = int(input("请输入杨辉三角的行数:"))
    
def triangle():
    m = [1]
    while True:
        yield m #在执行过程中,遇到yield就中断,下次又继续执行
        m = [1] + [m[i] + m[i+1] for i in range(len(m)-1)] + [1]
n = 0
for i in triangle():
    print(str(i).center(100))
    n = n + 1
    if n == num:
        break

3. (P4-prg3.py)编程计算有固定工资收入的党员每月所交纳的党费。工资基数3000元及以下者,交纳工资基数的0.5%;工资基数3000~5000元者,交纳工资基数的1%;工资基数在5000~10000元者,交纳工资基数的1.5%;工资基数超过10000元者,交纳工资基数的2%。
 

income = float(input("请输入党员的工资:"))
if income<= 3000:
     tax = income *0.005
elif income<=5000:
     tax = income*0.01
elif income<=10000:
     tax = income *0.15
else:
     tax = income*0.02
     
print("该党员应缴纳的党费为:",tax,"元")

4. (P4-prg4.py)编程实现袖珍计算器,要求输入两个操作数和一个操作符(+、-、*、/、%),根据操作符输出运算结果。注意“/”和“%”运算符的零除异常问题。
 

print("欢迎使用袖珍计算器")

m = float(input("请输入第一个操作数:"))
n = float(input("请输入第二个操作数:"))
operator = input("请输入操作符(+、-、*、/、%):")
 
if(n == 0 and (operator == '/' or operator == '%')):
    print("运算符零除异常")
    
else:
    if operator == '+': result = m+n
    elif operator == '-': result = m-n
    elif operator == '*': result = m*n
    elif operator == '/': result = m/n
    elif operator == '%': result = m%n
    
print(result)

5. (P4-prg5.py)我国汉代有位大将,名叫韩信。他每次集合部队,只要求部下先后按l~3、1~5、1~7报数,然后再报告一下各队每次报数的余数,他就知道到了多少人。他的这种巧妙算法被人们称为“鬼谷算”,也叫“隔墙算”,或称为“韩信点兵”,外国人还称它为“中国余数定理”。即有一个数,用3除余2,用5除余3,用7除余2,请问0~1000中这样的数有哪些?
 

print("0-1000中这样的数有:")
for i in range(0,1001):
    if((i % 3 == 2 )and (i % 5 == 3) and (i % 7 == 2)):
        print(i, end=" ")

6. (P4-prg6.py)一球从100米的高度自由落下,每次落地后反弹回原高度的一半,再落下。求小球在第10次落地时共经过多少米?第10次反弹多高?
 

sum = 0
height = 100
up = 0

for i in range(1,11):
    sum += height + up
    height = up = height/2


print("小球在第十次落地时共经过:{0}米,第十次反弹高度:{1}米".format(sum,height))  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Yvonnae

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

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

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

打赏作者

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

抵扣说明:

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

余额充值