Python基础教程:while和for练习

1.从键盘获取一个数字,然后计算它的阶乘,例如输入的是3那么输入3!的结果,并输出提示:

 1!等于1
 2!等于1*2
 3!等于1*2*3……*n

案例分析:使用循环的方式计算阶乘

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 寻找有志同道合的小伙伴,互帮互助,
群里还有不错的视频学习教程和PDF电子书!
'''
factorial = 1
number = int(input("请输入你计算阶乘的数字:"))
if number < 0:
    print("{}! 没有阶乘".format(number))
elif number == 0:
    print("{}! 等于1".format(number))
else:
    for i in range(1, number + 1):
        factorial *= i
    print("{}! 等于{}".format(number, factorial))

2.模仿银行的输入密码当三次输入错误后锁定账户(也就是有三次重新输入密码的机会)
加入账户为root密码为123456
案例分析:条件为三次,可使用循环三次break

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 寻找有志同道合的小伙伴,互帮互助,
群里还有不错的视频学习教程和PDF电子书!
'''
account = "root"
password = "123456"
i = 1
while True:
    name = input("\n请输入你的账户:")
    pass_wd = input("请输入你的密码:")
    if name == account and password == pass_wd:
        print("登录成功")
        break
    else:
        print("输入错误!")

    if i == 3:
        print("账户已锁定!")
        break
    i += 1

3.使用while循环输出如下图形:(必须使用双重while循环实现)

     *
    * *
   * * *
  * * * *
 * * * * *
i = 1
while i <= 5:

    j = 1
    while j <= i:
        if j == 1:
            print(" " * (5 - i), end="")
        print("* ", end="")
        j += 1

    print("")
    i += 1

4.求1 + 2!+ 3!+ …… + 20!的和。

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 寻找有志同道合的小伙伴,互帮互助,
群里还有不错的视频学习教程和PDF电子书!
'''
factorial = 1
sum1 = 0
for i in range(1, 6):
    factorial *= i
    sum1 += factorial
print(sum1)

5.本金10000元村人银行,年利润是千分之三每过1年,将本金和利息相加作为新的本金计算五年后获取的本金是多少

money_rate = 0.003
capital = 10000

for i in range(0, 6):
    capital += capital + capital * 0.003
print(capital)
posted @ 2022-10-07 20:42  I'm_江河湖海  阅读(27)  评论(0)    收藏  举报