python的循环语句

练习案例:求1-100的和
需求:通过while循环,计算从1累加到100的和
提示:
1.终止条件不要忘,设置为确保while循环100次
2.确保累加的数字,从1开始,到100结束
i=1
y=0
while i<=100:
    y+=i
    i+=1
print(f"1-100累加的和是:{y}")

运行:

 

猜数字案例:
设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数。
1.无限次机会,直到猜中为止
2.每一次猜不中,会提示大了或小了
3.猜完数字后,提示猜了几次
提示:
1.无限次机会,终止条件不适合用数字累加来判断
    可以考虑布尔类型本身(True or False)
2.需要提示几次猜中,就需要提供数字累加功能
3.随机数可以使用:import random
               num = random.randint(1,100)
#获取1-100的随机数字
import random
num = random.randint(1,100)
#定义一个变量,记录总共猜测了几次
count = 0
#通过一个布尔类型的变量,做循环是否继续的标记
flag = True
while flag:
    guess_num=int(input("请输入你猜测的数字:"))
    count += 1
    if guess_num == num:
        print("猜对了")
        #设置为false就是终止循环的条件
        flag = False
    else:
        if guess_num > num:
            print("你猜的大了")
        else:
            print("你猜的小了")

print(f"你总共猜了:{count}次")

运行:

 

 

练习案例:打印九九乘法表
1.控制行的循环 i<=9
2.控制每一行输出的循环 j<=i
#定义外层循环的控制变量
i = 1
while i <= 9:

    #定义内层循环的控制变量
    j = 1
    while j <= i:
        #内层循环的print语句,不要换号,通过\t制表符进行对齐
        print(f"{j} * {i} = {i * j}\t",end='')
        j += 1

    i += 1
    print()   #print空内容,就是输出一个换行

 运行:

练习案例:数一数有几个a
定义字符串变量name,内容为:“nianxi is a beautiful girl”
通过for循环,遍历此字符串,统计有多少个英文字母:“a”
提示:
1.计数可以在循环外定义一个整数类型变量用来做累加计数
2.判断是否为字母“a”,可以通过if语句结合比较运算符来完成
name = "nianxi is a beautiful girl"
i = 0

for j in name:
    if j == 'a':
        i += 1

print(f"nianxi is a beautiful girl中共有:{i}个字母a")

运行:

练习案例:有几个偶数
定义一个数字变量num,内容随意
并使用range()语句,获取从1到num的序列,使用for循环遍历它。
在遍历的过程中,统计有多少偶数出现。
提示:
1.序列可以使用:range(1,num)得到
2.偶数通过if来判断,判断数字余2是否为0即可
i=0
for x in range(1,100):
    if x % 2 == 0:
        i+=1
print(f"1到100(不含100本身)范围内,有{i}个偶数")

 运行:

 

练习案例:for循环打印九九乘法表
for i in range(1,10):
    for j in range(1,i+1):
        print(f"{j}*{i}={j*i}\t",end='')
    print()

 运行:

 

练习案例:发工资
某公司,账户余额有1W元,给20名员工发工资。
1.员工编号从1到20,从编号1开始,依次领取工资,每人可领1000元
2.领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位
3.如果工资发完了,结束发工资
提示:
1.使用循环对员工依次发放工资
2.continue用于跳过员工,break直接结束发工资
3.随机数可以用improt random
            num = random.randint(1,10)
import random
sum = 10000
for i in range(1 , 21):
    score = random.randint(1, 10)
    if score < 5:
        print(f"员工{i},绩效分{score},低于5,不发工资,下一位。")
        continue
    sum -= 1000
    print(f"向员工{i}发放工资1000元,账户余额还剩余{sum}元")
    if sum == 0:
        break
print("工资发完了,下个月领取吧。")

 运行:

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值