Python实验报告第三章——实例&实战

                                                            python第三章——流程控制语句实验报告

 

一、实验目的和要求

1、了解程序结构和条件表达式

2、掌握使用选择语句和循环语句

3、了解pass空语句和跳转语句的使用方法

 

二、实验环境

软件版本:Python 3.10 64_bit

 

三、实验过程

实例01:判断输入的是不是黄蓉所说的数

  使用if语句判断用户输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数,代码如下:

 

print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
#输入一个数
number = int(input("请输入您认为符合条件的数"))
#判断是否符合条件
if number%3 == 2 and number%5 == 3 and number%7 == 2:
    print(number,"符合条件:三三数之剩二,五五数之剩三,七七数之剩二")

 

结果为:

 

 

实例02:验证瑛姑给出的答案是否正确

  使用if…else语句判断输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数,并给予相应的提示,下面是代码:

print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
number = int(input("请输入瑛姑给出的数:"))                #输入一个数
if number%3 == 2 and number%5 == 3 and number%7 == 2:     #判断是否符合条件
    print(number,"符合条件")
else:                                                     #不符合条件
    print(number,"不符合条件")

结果为:

 

 

实例03:输出玫瑰花语

  使用if...else...if多分支语句实现根据用户输入的玫瑰花的朵数输出其代表的含义,以下是代码:

print("在古希腊神话中,玫瑰集爱情和美丽于一身,所以人们常用玫瑰来表达爱情。")
print("但是不同朵数的玫瑰花表达的含义是不同的。\n")
#获取用户输入的朵数,并转换为整形
number = int(input("请输入您想送几朵玫瑰花,真宵会告诉你含义:"))
if number == 1:                      #判断输入的数是否为1,代表1朵
    #如果等于1则输出提示信息
    print("1朵:你是我的唯一!")
elif number == 3:                    #判断是否为3朵
    print("3朵:I Love You!")
elif number == 10:                   #判断是否为10朵
    print("10朵:十全十美!")
elif number == 99:                   #判断是否为99朵
    print("99朵:天长地久!")
elif number == 108:                  #判断是否为108朵
    print("108朵:求婚!")
else:
    print("真宵也不知道了!可以考虑送1朵、3朵、10朵、99朵或108朵哟!")

结果为:

 

 实例04:判断是否为酒后驾车

  通过使用嵌套的if语句实现根据输入的酒精含量值判断是否为酒后驾车的功能,代码如下:

print("\n为了您和他人的安全,严禁酒后开车!\n")
proof = int(input("请输入每100毫升血液的酒精含量:")) #获取用户输入的酒精含量,并转化为整形
if proof <20:                          #酒精含量小于20毫克,不构成饮酒行为
    print("\n您还不构成饮酒行为,可以开车,但要注意安全!")
else:                                  #酒精含量大于或等于20毫克,已经构成饮酒驾车行为
    if proof <80:                      #酒精含量小于80毫克,达到饮酒驾驶标准
        print("\n已经达到饮酒驾驶标准,请不要开车!")
    else:                              #酒精含量大于或等于80毫克,已经达到醉酒驾驶标准
        print("\n已经达到醉酒驾驶标准,千万不要开车!")

结果为:

 

 实例05:助力瑛姑①:while循环版解题法

  使用while循环语句实现从1开始一次尝试符合条件的数,知道找到符合条件的数为止,才退出循环。具代码如下:

 

print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
none = True                                                #作为循环条件的变量
number= 0                                                  #计数的变量
while none:
    number += 1                                            #计数加1
    if number%3 ==2 and number%5 ==3 and number%7 ==2:     #判断是否符合条件
        print("答曰:这个数是",number)                      #输出符合条件的数
        none = False                                       #将循环条件的变量赋值

 

结果为:

 

 

实例06:助力瑛姑②:for循环版解题法

  使用for循环语句实现从1循环到100(不包含100),并且记录符合黄蓉要求的数。下面是实现的代码:

print("今有物不知其数,三三数剩之二,五五数剩之三,七七数剩之二,问几何?\n")
for number in range(100):
    if number%3 ==2 and number%5 ==3 and number%7 ==2:  #判断是否符合条件
        print("答曰:这个数是",number)                   #输出符合条件的数

结果为:

 

 

实例07:打印九九乘法表

  使用嵌套的for循环打印九九乘法表(上三角),代码如下:

for i in range(1,10):
    for j in range(i,10):
        print(str(j) + "×" + str(i) + "=" + str(i*j) + "\t", end='')
    print('')

结果是:

 

 

实例08:助力瑛姑③:for循环改进版解题法

  在实例的最后一行代码再添加一个break语句,即可实现找到符合要求的数后直接退出for循环。修改后的代码如下:

print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
for number in range(100):
    if number%3 == 2 and number%5 == 3 and number%7 == 2:
        print("答曰:这个数是",number)
        break

结果为:

 

 实例09:逢七拍腿游戏

  通过在for循环中使用continue语句实现计算拍腿次数,即从1到100(不包括100),一共有多少个位数为7或7的倍数这样的数,代码如下:

total = 99
for number in range(1,100):
    if number % 7 ==0:
        continue
    else:
        string = str(number)
        if string.endswith('7'):
            continue
    total -=1
print("从1数到99共拍腿",total,"次。")

结果为:

 

 ————————————————————————————————————————————————————————————————————————————————————————

实战一:模拟支付宝蚂蚁森林的能量产生过程 

代码:

print("查询能量请输入能量来源!退出程序请输入0")
source = input("能量来源如下:\n生活缴费、行走捐、共享单车、线下支付、网络购票\n")
if source == '生活缴费':
   print("100g")
elif source == '行走捐':
   print("200g")
elif source == '共享单车':
   print("300g")
elif source == '线下支付':
   print("419g")
elif source == '网络购票':
   print("534g")
elif source == '0':
   print("已退出!")

结果为:

 

 

 

 实战二:猜数字游戏

下面是代码环节:

import random
a = random.randint(1,10)
str_a = str(a)
print("------猜数字游戏------")
b = int(input("请输入1~10之间的任意一个数:"))
for number in range(1,6):  #最多猜5次 
    if b < 1:
        break  
    if b < a:
        b = int(input("太小,请重新输入:"))
    elif b > a:
          b = int(input("太大,请重新输入:"))
if b == a:
   print("恭喜你,你赢了,猜中的数字是:"+str_a)
print("------游戏结束------")

到结果环节了:

 

 

 实战三:模拟“跳一跳”小游戏的加分块

code is

print("------跳一跳------")
print("欢迎回来,请开始游戏......\n请输入(中心、音乐块、微信支付块):")
for number in range(1,10):
    a = input("请输入:")
    if a == '中心':
       print("您的分数为:19")
    elif a == '音乐块':
         print("您的分数为:35")
    elif a == '微信支付块':
         print("您的分数为:34")
    else:
        break
print("游戏结束!")

result is:

 

 实战四:模拟10086查询功能

代码是:

print("♦------10086查询功能------♦")
print("输入1,查询当前余额\n输入2,查询当前剩余流量\n输入3,查询当前剩余通话\n输入0,退出自动查询系统\n")
none = True
while none:
    number = input()
    if number == '1':
        print("当前余额为:345元")
    elif number == '2':
        print("当前剩余流量为:35G")
    elif number == '3':
        print("当前剩余通话为:34分钟")
    elif number == '0':
        print("退出自动查询系统!")
        none = False

结果是:

 

  四、实验结果与分析

     流程控制对于任何一门编程语言来说都是至关重要的,学习好流程控制语句,实现程序与用户更好的交流。

 

posted @ 2022-09-21 23:44  绫里真宵  阅读(592)  评论(0)    收藏  举报