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:该目录包含了自动 ...
随机推荐
- Codeforces Round #783 (Div. 2)
A. Direction Change 题意 从(1,1)点出发到(n,m),每次可以向上下左右四个方向移动,但是不能与上次移动方向相同 最少要移动多少不,如果不能到达输出 -1 思路 假设n< ...
- 可落地的DDD(7)-战术设计上的一些误区
背景 几年前我总结过DDD战术设计的一些落地经验可落地的DDD(5)-战术设计,和一次关于聚合根的激烈讨论最近两年有些新的落地体验,回过头来发现,当初对这些概念的理解还是没有深入,这篇文章重新阐述下. ...
- HDFS、Yarn、Hive…MRS中使用Ranger实现权限管理全栈式实践
摘要:Ranger为组件提供基于PBAC的鉴权插件,供组件服务端运行,目前支持Ranger鉴权的组件有HDFS.Yarn.Hive.HBase.Kafka.Storm和Spark2x,后续会支持更多组 ...
- APISpace 让你快速获取安徒生童话故事
<安徒生童话>是丹麦作家安徒生创作的童话集,共由166篇故事组成.该作爱憎分明,热情歌颂劳动人民.赞美他们的善良和纯洁的优秀品德:无情地揭露和批判王公贵族们的愚蠢.无能.贪婪和残暴. 接口 ...
- 【高并发】通过源码深度分析线程池中Worker线程的执行流程
大家好,我是冰河~~ 在<高并发之--通过ThreadPoolExecutor类的源码深度解析线程池执行任务的核心流程>一文中我们深度分析了线程池执行任务的核心流程,在ThreadPool ...
- 如何设计一个分布式 ID 发号器?
大家好,我是树哥. 在复杂的分布式系统中,往往需要对大量的数据和消息进行唯一标识,例如:分库分表的 ID 主键.分布式追踪的请求 ID 等等.于是,设计「分布式 ID 发号器」就成为了一个非常常见的系 ...
- 说起分布式自增ID只知道UUID?SnowFlake(雪花)算法了解一下(Python3.0实现)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_155 但凡说起分布式系统,我们肯定会对一些海量级的业务进行分拆,比如:用户表,订单表.因为数据量巨大一张表完全无法支撑,就会对其进 ...
- Javaweb-文件上传和邮件发送
1.文件上传 新建空项目 准备工作 在maven仓库里下载commons io 和 commons fileupload两个jar包 实用类介绍 文件上传注意事项 为保证服务器安全,上传文件应该放在外 ...
- 【AGC】增长服务1-远程配置示例
[AGC]增长服务1-远程配置示例 前言:上一次笔者给大家带来了AGC领域的性能管理服务的学习.这次我们再继续深化学习AGC的相关知识.在文章开始之前,再给读者简单介绍一下AGC,以免第一次来的读 ...
- Java面试题(五)--Rabbits
1.什么是MyBatis? 1.Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动.创建连接.创建statement等 ...