Python实验报告——第3章 流程控制语句
实验报告
【实验目的】
1.掌握python中流程控制语句的使用,并能够应用到实际开发中。
【实验条件】
1.PC机或者远程编程环境
【实验内容】
1.完成第三章流程控制语句实例01-09,实战一到实战四。
实例01:判断输入的是不是黄蓉所说的数
使用 if 语句判断用户输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数。
代码如下:
1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
2 number = int(input("请输入您认为符合条件的数:"))
3 if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
4 print(number, "符合条件:三三数之剩二,五五数之剩三,七七数之剩二")
运行结果如下:

实例02:验证瑛姑给出的答案是否正确
使用 if...else 语句判断用户输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数,并给予相应的提示。
代码如下:
1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
2 number = int(input("请输入瑛姑给出的数:"))
3 if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
4 print(number, "符合条件")
5 else:
6 print(number, "不符合条件")
运行结果如下:


实例03:输出玫瑰花语
使用 if...elif...else多分支语句实现根据用户输入的玫瑰花的朵数输出其代表的含义。
代码如下:
1 print("在古希腊神话中,玫瑰集爱情与美丽于一身,所以人们常用玫瑰来表达爱情。")
2 print("但是不同朵数的玫瑰花代表的含义是不同的。\n")
3 number = int(input("输入您想送几朵玫瑰花,小默会告诉您含义:"))
4 if number == 1:
5 print("1朵:你是我的唯一!")
6 elif number == 3:
7 print("3朵: I Love you!")
8 elif number == 10:
9 print("10朵:十全十美!")
10 elif number == 99:
11 print("99朵:天长地久!")
12 elif number == 108:
13 print("108朵:求婚!")
14 else:
15 print("小默也不知道了!可以考虑送1朵、3朵、10朵、99朵或108朵哟!")
运行结果如下:

实例04:判断是否为酒后驾车
通过使用嵌套的if语句实现根据输入的酒精含量值判断是否为酒后驾车的功能。
代码如下:
1 print("\n为了您和他人的安全,严禁酒后开车!\n")
2 proof = int(input("请输入每100毫升血液的酒精含量:"))
3 if proof < 20:
4 print("\n您还不构成饮酒行为,可以开车,但要注意安全!")
5 else:
6 if proof < 80:
7 print("\n已经达到酒后驾驶标准,请不要开车!")
8 else:
9 print("\n已经达到醉酒驾驶标准,千万不要开车!")
运行结果如下:


实例05:助力瑛姑:while循环版解题法
使用while循环语句实现从1开始依次尝试符合条件的数,直到找到符合条件的数时,才退出循环。具体的实现方法是:首先定义一个用于计数的变量number和一个作为循环条件的变量none(默认值为真),然后编写while循环语句,在循环体中,将变量number的值加1,并且判断number的值是否符合条件,当符合条件时,将变量none设置为假,从而退出循环。
代码如下:
1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
2 none = True
3 number = 0
4 while none:
5 number += 1
6 if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
7 print("答曰:这个数是", number)
8 none = False
运行结果如下:

实例06:助力瑛姑:while循环版解题法
使用for循环语句实现从1循环到100(不包含100),并且记录符合黄蓉要求的数。具体的实现方法是:应用for循环语句从1迭代到99,在循环体中,判断迭代变量number是否符合
“三三数之剩二,五五数之剩三,七七数之剩二”的要求,如果符合则应用print()函数输出,否则继续循环。
代码如下:
1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
2 for number in range(100):
3 if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
4 print("答曰:这个数是", number)
运行结果如下:

实例07:打印倒九九乘法表
使用嵌套的for循环打印倒九九乘法表。
代码如下:
1 for i in range(9, 0, -1):
2 for j in range(i, 0, -1):
3 print(str(j) + "x" + str(i) + "=" + str(i * j) + "\t", end='')
4 print('')
运行结果如下:

实例08:助力瑛姑:for循环版改进版解题法
在实例06的最后一行代码下方再添加一个break语句,即可实现找到符合要求的数后直接退出for循环。
代码如下:
1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")
2 for number in range(100):
3 if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
4 print("答曰:这个数是", number)
5 break
运行结果如下:

实例09:逢七拍腿游戏

通过在for循环中使用continue语句实现计算拍腿次数,即计算从1到100(不包括100),一共有多少个尾数为7或7的倍数这样的数。
代码如下:
1 total = 99
2 for number in range(1, 100):
3 if number % 7 == 0:
4 continue
5 else:
6 string = str(number)
7 if string.endswith('7'):
8 continue
9 total -= 1
10 print("从1数到99共拍腿", total, "次")
运行结果如下:

实战一:模拟支付宝蚂蚁森林的能量产生过程
支付宝的蚂蚁森林通过日常的走步、生活缴费、线下支付、网络购票、共享单车等低碳、环保行为可以积攒能量,当能量达到一定数量后,可以种一颗真正的树。
本实战将模拟支付宝蚂蚁森林的能量生产过程。效果如图所示:

代码如下:
1 for i in range(100):
2 print("""能量查询请输入能量来源!退出程序请输入0
3 能量来源如下:
4 生活缴费、行走捐、共享单车、线下支付、网络购票""")
5 res = input()
6 if res == '生活缴费':
7 print("100g")
8 continue
9 elif res == '行走捐':
10 print("200g")
11 continue
12 elif res == '共享单车':
13 print("300g")
14 continue
15 elif res == '线下支付':
16 print("400g")
17 continue
18 elif res == '网络购票':
19 print("500g")
20 continue
21 elif res =='0':
22 print("已退出!")
23 break
24 else:
25 continue
运行结果如下:

实战二:猜数字游戏
编写一个猜数字的小游戏,随机生成一个1到10之间(包括1和10)的数字作为基准数,玩家每次通过键盘输入一个数字,如果输入的数字与基准数相同,则成功过关,否则重新输入。
如果玩家输入-1,则表示退出游戏。效果如图所示:

代码如下:
1 print("-------------猜数字游戏----------------")
2 import random
3 res = random.randint(1, 10)#随机生成1~10种的一个数
4 while True:
5 num = int(input("请输入1~10之间的任意一个数:"))
6 if num < 1 or num > 10:
7 print("输入有误,请输入1~10之间的任意一个数。")
8 break
9 if num > res:
10 print("太大,请重新输入:")
11 elif num < res:
12 print("太小,请重新输入:")
13 else:
14 print("恭喜你,你赢了,猜中的数字是:", str(res))
15 break
运行结果如下:

实战三:模拟“跳一跳”小游戏的加分块
“跳一跳”小游戏提供了一些加分块,当跳到这些加分块上时,会有额外的加分。本实战将模拟“跳一跳”小游戏,实现输入不同的加分快,显示应加的分数,效果如图所示:

代码如下:
1 print("-----------跳一跳--------------")
2 print("欢迎回来,请开始游戏......")
3 print("请输入(中心、音乐块、微信支付块):")
4 count = 0
5 while True:
6 res = input("请输入:")
7 if res == '中心':
8 count += 2
9 print("您的分数为:", count)
10 elif res == '音乐块':
11 count += 30
12 print("您的分数为:", count)
13 elif res == '微信支付块':
14 count += 10
15 print("您的分数为:", count)
运行结果如下:

实战四:模拟10086查询功能
编写Python程序,模拟10086自助查询系统的功能:
输入1,显示您当前的余额;
输入2,显示您当前剩余的流量,单位为G;
输入3,您当前的剩余通话,单位为分钟;
输入0,退出自助查询系统。
效果如图所示:

代码如下:
1 print("---------------10086查询系统---------------")
2 print("输入1,查询当前余额\n"
3 "输入2,查询剩余流量\n"
4 "输入3,查询当前剩余通话\n"
5 "输入0,退出自助查询系统!\n")
6 while True:
7 num = input()
8 if num == "1":
9 print("当前余额为999元")
10 elif num == "2":
11 print("当前剩余流量为5G")
12 elif num == "3":
13 print("当前剩余通话为189分钟")
14 elif num == "0":
15 print("退出自助查询系统!")
16 break
运行结果如下:

【实验结果与分析】
1.本次实验主要学习Python中的选择语句、循环语句等流程控制语句。
2.重点掌握学习Python中控制流程语句的使用,并能够应用到实际开发中。
Python实验报告——第3章 流程控制语句的更多相关文章
- Python实验报告——第4章 序列的应用
实验报告 [实验目的] 1.掌握python中序列及序列的常用操作. 2.根据实际需要选择使用合适的序列类型. [实验条件] 1.PC机或者远程编程环境. [实验内容] 1.完成第四章 序列的应用 实 ...
- Python实验报告——第2章 Python语言基础
实验报告 [实验目的] 1.熟悉在线编程平台. 2.掌握基本的 python 程序编写.编译与运行程序的方法. [实验条件] 1.PC机或者远程编程环境 [实验内容] 1.完成第二章实例01-07,实 ...
- 零基础学Python--------第3章 流程控制语句
第3章 流程控制语句 3.1程序的结构 计算机在解决某个具体问题时,主要有3种情况,分别是顺序执行所有的语句.选择执行部分语句和循环执行部分语句.程序设计中的3种基本结构为顺序结构.选择结构和循环结构 ...
- java 第三章 流程控制语句
1.条件语句 (1)if 语句 ( 单一条件) if (表达式){ 执行语句块 } (2)执行流程 · if 语句 条件表达式可以是任何一种逻辑表达式 如果表达式值为true,则执行花括号的内容后 ...
- python实验报告(第五周)
一.实验目的和要求 学会使用字符串的常用操作方法和正确应用正则表达式. 二.实验环境 软件版本:Python 3.10 64_bit 三.实验过程 1.实例1:使用字符串拼接输出一个关于程序员的笑话 ...
- Python实验报告(第四周
一.实验目的和要求 学会应用列表.元组.字典等序列: 二.实验环境 软件版本:Python 3.10 64_bit 三.实验过程 1.实例1:输出每日一贴 (1)在IDLE中创建一个名称为tips.p ...
- Python 实验报告(第三周)
一.实验目的和要求 1.熟练运用常见选择结构: 2.熟练运用for循环和while循环: 3.理解带else语句的循环结构执行过程和break.continue语句在循环中的作用. 二.实验环境 软件 ...
- python学习笔记:第六天(流程控制语句)
Python3 条件控制 1.if 语句 <1> 一般形式 Python中if语句的一般形式如下所示: if condition_1: statement_block_1 elif con ...
- 2017-2018-2 20165315 实验四《Android程序设计》实验报告
2017-2018-2 20165315 实验四<Android程序设计>实验报告 第24章:初识Android Android Studio项目的目录树 1 build:该目录包含了自动 ...
随机推荐
- Mark IntelliJ IDEA 2018.2.3破解
来源:https://blog.csdn.net/qq_38060935/article/details/90377761
- 可落地的DDD(7)-战术设计上的一些误区
背景 几年前我总结过DDD战术设计的一些落地经验可落地的DDD(5)-战术设计,和一次关于聚合根的激烈讨论最近两年有些新的落地体验,回过头来发现,当初对这些概念的理解还是没有深入,这篇文章重新阐述下. ...
- 解决Windows10、Windows11文件名无法大写的问题
问题描述: 同一目录下的不同文件有些可以用大写字母做文件名,有些输入大写字母完成后自动变成小写. 甚至同一文件的文件名中的相同字母也会有这种情况,例如:文件名为"bu人BU"的文件 ...
- GitHub中Fork来的仓库如何进行双向更新
一.做点贡献 想对别人的某个仓库"做点贡献"怎么办? 1. Fork该仓库 首先Fork该仓库,本文以git-learn这个仓库为例 这样自己的账号下就会出现这样一个仓库 2. C ...
- 在docker容器中如何自动生成配置文件(以nginx配置为例)
应用场景类似于多个域名要起多个容器,有些参数有些域名需要,有些域名不需要,或者参数的值不太一样,需要去对应的配置文件修改,不太灵活,如果通过变量的方式直接定义在Dockerfile文件中,需要哪些参数 ...
- DTS搭载全新自研内核,突破两地三中心架构的关键技术|腾讯云数据库
随着企业规模的扩大,对数据库可用性要求越来越高,更多企业采用两地三中心.异地多活的架构,以提高数据库的异常事件应对能力. 在数据库领域,我们常听的"两地三中心"."异地多 ...
- SpringBoot集成文件 - 如何使用POI导出Word文档?
前文我们介绍了通过Apache POI导出excel,而Apache POI包含是操作Office Open XML(OOXML)标准和微软的OLE 2复合文档格式(OLE2)的Java API.所以 ...
- JS基础小练习
入职薪水10K,每年涨幅入职薪水的5%,50年后工资多少? var sum = 10000; console.log(sum * (1 + 0.05 * 50)); 为抵抗洪水,战士连续作战89小时, ...
- linux nginx启用php
cd /usr/local/php/etc mv php-fpm.conf.default php-fpm.conf vi /usr/local/nginx/conf/nginx.conf # 删除如 ...
- YII类的映射表机制
<?php /** * Created by PhpStorm. * Date: 2016/5/25 * Time: 19:09 * * YII的类的映射表 */ namespace front ...