python小白练习题之条件控制与循环控制

目录
  • 前言
  • 一:选择结构:
  • 二:循环结构
  • 总结

前言

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。

比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现:

age = 20
if age >= 18:
    print('your age is', age)
    print('adult')

根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。

可以通过下图来简单了解条件语句的执行过程:

一:选择结构:

1.身高预测

每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。

设faHeight为其父身高,moHeight为其母身高,身高预测公式为:

男性成人时身高 = (faHeight + moHeight) * 0.54

女性成人时身高 = (faHeight * 0.923 + moHeight) / 2

此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高1.5%。

要求父母的身高、是否爱好体育锻炼等参数从键盘输入。

print("-------------身高预测小程序---------------")
faHeight=float(input("请输入父亲的身高(cm):"))
moHeight=float(input("请输入母亲的身高(cm):"))
sex=int(input("请输入你的性别(1:代表男,0:代表女):"))
a=int(input("是否喜爱锻炼(1:代表是,2:代表不否):"))
b=int(input("是否有卫生饮食的习惯(1:代表是,2:代表不否):"))
if(sex == 1):
    # print("你是个男生!")
    if(a == 1):
        # print("你有体育锻炼的习惯!")
        if(b == 1):
            # print("你有卫生饮食的习惯!")
            height=(faHeight+moHeight)*0.54*1.02*1.015
            print("你是男生,鉴于你爱好锻炼和健康饮食,你的身高为:"+str(height))
        else:
            height = (faHeight + moHeight) * 0.54 * 1.02
            print("你是男生,鉴于你爱好锻炼,你的身高为:" + str(height))
    else:
        if (b == 1):
            # print("你有卫生饮食的习惯!")
            height = (faHeight + moHeight) * 0.54 * 1.015
            print("你是男生,鉴于你健康饮食,你的身高为:" + str(height))
        else:
            height = (faHeight + moHeight) * 0.54
            print("你是男生,鉴于你不锻炼和卫生饮食,你的身高为:" + str(height))
else:
    # print("你是个女生!")
    if (a == 1):
        # print("你有体育锻炼的习惯!")
        if (b == 1):
            # print("你有卫生饮食的习惯!")
            height = (faHeight *0.923 + moHeight)/2 * 1.02 * 1.015
            print("你是女生,鉴于你爱好锻炼和健康饮食,你的身高为:" + str(height))
        else:
            height = (faHeight *0.923 + moHeight)/2 * 1.02
            print("你是女生,鉴于你爱好锻炼,你的身高为:" + str(height))
    else:
        if (b == 1):
            # print("你有卫生饮食的习惯!")
            height = (faHeight *0.923 + moHeight)/2 * 1.015
            print("你是女生,鉴于你健康饮食,你的身高为:" + str(height))
        else:
            height = (faHeight *0.923 + moHeight)/2
            print("你是女生,鉴于你不锻炼和卫生饮食,你的身高为:" + str(height))

2.计算销售总金额

图书批发商店的某本书的零售价是26.5元/本,如果客户一次性购买100本以上(包括100本),则每本的价格打9折,如果客户一次性购买500本以上(包括500本),则每本的价格打8折并返回1000元给客户,请分别计算购买8本、150本、600本的应付金额是多少。要求购买书的数量从控制台输入。

print("请输入你三次购买图书的数量:")
for i in range(3):
    num = int(input("请输入你购买的图书总量:"))
    if (num < 100):
        cost = 26.5 * num
        print("你需付:" + str(cost) + "元")
    elif (num < 500):
        cost = 26.5 * num * 0.9
        print("由于你购买大于100本书,已为你打9折,你需付:" + str(cost) + "元")
    else:
        cost = 26.5 * num * 0.8
        print("由于你购买大于500本书,已为你打8折,你需付:" + str(cost) + "元")

3、输入两个整数,按由小到大的顺序输出这两个数。

#3. 输入两个整数,按由小到大的顺序输出这两个数
num1=int(input("请输入第一个整数:"))
num2=int(input("请输入第二个整数:"))
if(num1<num2):
    print("两个数从小到大排序为:",num1,num2)
else:
    print("两个数从小到大排序为:", num2, num1)

二:循环结构

1、 有1020个西瓜,第一天卖掉总数的一半后又多卖出两个,以后每天卖剩下的一半多两个,问几天以后能卖完?

num=1020
count=0
while(num>0):
    num=num/2-2
    count+=1
    print(count)
print("西瓜在",count,"天后卖完")

2、计算1000以内所有不能被7整除的整数之和。

#方法一:
sum=0
for i in range(1,1000):
    if(i%7 !=0 ):
        sum+=i
print("1000以内所有不能被7整除的整数之和为:",sum)
#方法二:
i=1
sum1=sum2=0
while i<1000:
    if(i%7 ==0):
        sum1 += i
        i += 1
    else:
        sum2 += i
        i += 1
print("1000以内能被7整除的整数之和",sum1)
print("1000以内不能被7整除的整数之和",sum2)

3、计算 1+2-3+4-5+6-7…+100的结果//注意审题

#7、计算 1+2-3+4-5+6-7....+100的结果;
sum1=sum2=sum=0
for i in range(2,101):
    if(i%2 == 0):
        sum1+=i
    else:
        sum2+=i
sum=sum1-sum2+1
print("结果为:",sum)

4、一张纸的厚度大约是0.08mm,对折多少次之后能达到或超过珠穆朗玛峰的高度(8848.13米)

#4、一张纸的厚度大约是0.08mm,对折多少次之后能达到或超过珠穆朗玛峰的高度(8848.13米)
n=0.00008
count=0
while n<8848.13:
    n=n*2
    count+=1
print("需要对折:",count,"次")

5、从控制台输入一个正整数,计算该数的阶乘。例如输入5,阶乘为 54321

#9、从控制台输入一个正整数,计算该数的阶乘。例如输入5,阶乘为 5*4*3*2*1
sum=1
num=int(input("请输入一个正整数:"))
while num>0:
    sum=sum*num
    num=num-1
print("随机数num的阶乘为:",sum)

6、 猴子吃桃问题: 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃了一半,又多吃一个,以后每天都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子。求第一天共摘了多少个?

#2、猴子吃桃问题: 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,
# 第二天早上又将剩下的桃子吃了一半,又多吃一个,以后每天都吃了前一天剩下的一半零一
#个。到第10天早上想再吃时,见只剩下一个桃子。求第一天共摘了多少个?
i=sum=1
while i<=9:
    sum=(sum+1)*2
    i+=1
print("第一天共摘了",sum,"个桃子")

7、任意输入一个整数(小于10位),输出它一共有多少位。

#4、任意输入一个整数(小于10位),输出它一共有多少位。
num=float(input("请任意输入一个整数(小于10位):"))
count=0
while (num > 1 and num<1000000000):
    num /=10
    count+=1
print("你输入的数一共有",count,"位")

8、本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是:

#本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。
# 计算5年后,获得的本金是
num=10000
i=1
while i<=5:
    num*=1.003
    i+=1
print("五年后的本金为:",num)

9、你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数

#你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。
# 程序输出读到的数据中的奇数和偶数的个数
print("请输入一系列数字(输入-1代表输入结束):")
sum1=sum2=0
x=int(input("请输入第一个数:"))
# input("请输入下一个数:")
while (x!=-1):
    x=int(input("请输入下一个数:"))
    if(x%2==0):
        sum1+=1
    else:
        sum2+=1
print("这一系列数中偶数个数为:",sum1)
print("这一系列数中奇数个数为:",sum2)

总结

到此这篇关于python条件控制与循环控制的文章就介绍到这了,更多相关python条件控制与循环控制内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python3基础之条件与循环控制实例解析

    本文实例形式讲解了Python3的条件与循环控制语句及其用法,是学习Python所必须掌握的重要知识点,现共享给大家供大家参考.具体如下: 一般来说Python的流程控制语句包括:if条件语句.while循环语句.for循环语句.range函数以及break.continue.pass控制语句.这些语句在Python中的语义和在其他语言中基本是一样的,所以这里就只说它们的用法. 一.if语句 if语句是最常用的条件控制语句,Python中的一般形式为: if 条件一: statements el

  • Python3中条件控制、循环与函数的简易教程

    一.条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块,而计算机很多自动化任务,也是根据条件判断来实现的. 我们可以通过下图,来了解一下条件语句执行的过程 和 Java 差不多,不同点: 1.每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块: 2.使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块: 3.elif 代替了 else if: 4.在 Python 中没有 switch – case 语句. age =

  • Python入门_条件控制(详解)

    条件控制其实就是if...else...(如果...条件是成立的,就做...:反之,就做...)的使用,其基本结构是: 具体看下面这个例子: def account_login(): # 定义函数 password = input('请输入密码:') # 输入密码 if password == '12345': # 如果输入密码是12345,则登录成功 print('登录成功') else: print('密码有误,请重新输入') # 否则提示密码有误,请重新输入 account_login()

  • Python中for循环控制语句用法实例

    本文实例讲述了Python中for循环控制语句用法.分享给大家供大家参考.具体分析如下: 第一个:求 50 - 100 之间的质数 import math for i in range(50, 100 + 1): for j in range(2, int(math.sqrt(i)) + 1): if i % j == 0: break else: print i 输出如下: 53 59 61 67 71 73 79 83 89 97 第二个:把else的位置与if处于同一缩进. import

  • Python基础之条件控制操作示例【if语句】

    本文实例讲述了Python基础之条件控制操作.分享给大家供大家参考,具体如下: if 语句 Python中if语句的一般形式如下所示: if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3 如果 "condition_1" 为 True 将执行 "statement_block_1" 块语句,如果 "condition_1&

  • python小白练习题之条件控制与循环控制

    目录 前言 一:选择结构: 二:循环结构 总结 前言 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行pr

  • Java 条件控制与循环控制实例

    条件控制语句: 1. if-else语句 if(条件1){ 代码块1; }else if(条件2){ 代码块2; }else{ 代码块3; } 2. switch语句 switch(变量a){ case A: //代码块1 break; case B: //代码块2 break; default: //前面没有满足的条件,执行default //代码块3 break; } 若是不用break,则会一直执行下去,直到整个循环终止. switch语句接收的变量类型有限:char,byte,short

  • Shell脚本的条件控制和循环语句

    条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expression 和方括号([ ])之间必须有空格,否则会有语法错误. if 语句通过关系运算符判断表达式的真假来决定执行哪个分支.Shell 有三种 if ... else 语句: if ... fi 语句 if ... else ... fi 语句 if ... elif ... else ... f

  • 利用python实现简易版的贪吃蛇游戏(面向python小白)

    引言 作为python 小白,总是觉得自己要做好百分之二百的准备,才能开始写程序.以至于常常整天在那看各种语法教程,学了几个月还是只会print('hello world'). 这样做效率太低,正确的做法,是到身边找问题,然后编程实现.比如说,我学了高等数学,我是不是应该考虑下如何去用编程实现求导或者积分操作,如果想不出怎么办,是不是应该 baidu 一下,别人是如何实现数值积分或是符号积分的.我们每天买东西都要用到加减甚至乘除,那么我是否能编写个简单的计算器,如果命令行太丑的话,我是否能够快速

  • python使用itchat实现手机控制电脑

    本文实例为大家分享了python使用itchat实现手机控制电脑的具体代码,供大家参考,具体内容如下 1.准备材料 首先电脑上需要安装了python,安装了opencv更好(非必需) 如果安装了opencv的话,在opencv的python目录下找到cv2.pyd,将该文件放到python的库搜索路径就可以导入了 然后下载itchat:github 2.开始使用 下载了itchat后解压(建议先阅读该文件夹下的docs),然后在该文件夹下执行cmd命令来安装itchat库: python set

  • 浅谈Python里面小数点精度的控制

    要求较小的精度 round()内置方法 这个是使用最多的,刚看了round()的使用解释,也不是很容易懂.round()不是简单的四舍五入的处理方式. For the built-in types supporting round(), values are rounded to the closest multiple of 10 to the power minus ndigits; if two multiples are equally close, rounding is done t

  • python按照多个条件排序的方法

    对tuple进行排序,先按照第一个元素升序,如果第一个元素相同,再按照第二个元素降序排列. L = [(12, 12), (34, 13), (32, 15), (12, 24), (32, 64), (32, 11)] L.sort(key=lambda x: (x[0], -x[1])) print(L) 结果: [(12, 24), (12, 12), (32, 64), (32, 15), (32, 11), (34, 13)] 以上这篇python按照多个条件排序的方法就是小编分享给大

  • python对Excel按条件进行内容补充(推荐)

    关于xlrd/xlwt和openpyxl的差别 两者都是对于excel文件的操作插件,两者的主要区别在于写入操作, 其中xlwt针对Ecxec2007之前的版本,即.xls文件,其要求单个sheet不超过65535行, 而openpyxl则主要针对Excel2007之后的版本(.xlsx),它对文件大小没有限制. 另外还有区别就是二者在读写速度上的差异,xlrd/xlwt在读写方面的速度都要优于openpyxl,但xlwt无法生成xlsx openpyxl的用法 官方文档 先了解下Workshe

随机推荐