流程控制语句包括哪些语句(3.流程控制语句)
导读:1.已知点的坐标(x, y ,判断其所在的象限。...
1.已知点的坐标(x, y) ,判断其所在的象限 。
输出结果:
请输入x的坐标:3
请输入y的坐标:6
第一象限
请输入x的坐标:-6
请输入y的坐标:5
第二象限
请输入x的坐标:-9
请输入y的坐标:-5
第三象限
请输入x的坐标:1
请输入y的坐标:-2
第四象限
请输入x的坐标:0
请输入y的坐标:0
原点
2 、请根据BMI公式(体重除以身高的平方)计算BMI指数 ,
BMI指数如下:低于18.5:过轻
18.5-25:正常
25-28:过重
28-32:肥胖
高于32:严重肥胖
请输入小明身高1.75和体重80.5kg ,用if-elif语句帮小明判断并打印BMI结果 。
weight = float(input("请输入体重(kg):"))
height = float(input("请输入身高(m):"))
BMI = weight / height ** 2
print("BMI:")
if 0 < weight < 18.5 :
print("过轻")
elif 18.5 <= BMI < 25 :
print("正常")
elif 28 <= BMI < 32 :
print("肥胖")
else:
print("严重肥胖")
输出结果:
请输入体重(kg):66
请输入身高(m):190
BMI:
严重肥胖
3 、输入一个数字 ,按照如下条件处理:如果该数字各位数之和为奇数 ,则将该数各位数逆序输出(如输入122 ,则输出为221);如果该数字各位数之和为偶数 ,则直接输出该数字(如输入123 ,则输出为321) 。
a = int(input("请输入一个三位数:"))
b = int(a % 10)
c = int(a // 10) % 10
d = int(a // 100)
#print("{}={}+{}*10+{}*100".format(a, b, c, d))
f = (b+c+d)
print("各数字之和为",f)
if ((b + c + d) % 2 == 0) :
print("输出偶数:", a)
else :
a = str(a)
print("输出奇数", a[: :-1])
输出结果:
请输入一个三位数:122
各数字之和为 5
输出奇数 221请输入一个三位数:123
各数字之和为 6
输出偶数: 123方法二:
a = int(input("请输入一个数:"))
# 百位
baiw = int(a/100)
# 十位
shiw = int(a/10)%10
# 个位
gew = a%10
# 求和
he = baiw + shiw + gew
if he %2 == 0:
# 偶数
print("偶数 ,直接输出", a)
else:
print("奇数,逆序输出",gew,shiw,baiw)
输出结果:
请输入一个数:>? 123
偶数 ,直接输出 123
请输入一个数:>? 122
奇数 ,逆序输出 2 2 1
4 、请分别使用while和for语句输出1至100的奇数和 。
# while语句
i=1
sum = 0
while i<=100:
if i%2 !=0:
sum=sum +i
i+=1
print("1-100的奇数累积和为:%d"%sum)
输出结果:
1-100的奇数累积和为:2500
#for语句
sum=0
for n in range(1,101):
if (n%2==1):
sum=sum +n
print ("1-100的奇数和=",sum)
输出结果:
1-100的奇数和= 2500
5 、编写程序输出1到100中同时被3和5整除的数 。
for a in range(1,101):
if a%3==0 and a%5==0:
print(被3和5整除,a)
输出结果:
被3和5整除 15
被3和5整除 30
被3和5整除 45
被3和5整除 60
被3和5整除 75
被3和5整除 90
6 、有3 、5 、7 、8 、9共五个个数字,能组成多少个互不相同且无重复数字的三位数 ,并输出这些数字 。
from random import random
import list1 as list1
import lst as lst
number = [3, 5, 7, 8, 9]
for x in range(0, 5):
for y in range(0, 5):
for z in range(0, 5):
if not (x == y or y == z or x == z):
print({} {} {}.format(number[x], number[y], number[z], ))
f = 5 * 4 * 3
print("能组成互不相同且无重复数字的三位数:", f)
输出结果:
3 5 7
3 5 8
3 5 9
3 7 5
3 7 8
3 7 9
3 8 5
3 8 7
3 8 9
3 9 5
3 9 7
3 9 8
5 3 7
5 3 8
5 3 9
5 7 3
5 7 8
5 7 9
5 8 3
5 8 7
5 8 9
5 9 3
5 9 7
5 9 8
7 3 5
7 3 8
7 3 9
7 5 3
7 5 8
7 5 9
7 8 3
7 8 5
7 8 9
7 9 3
7 9 5
7 9 8
8 3 5
8 3 7
8 3 9
8 5 3
8 5 7
8 5 9
8 7 3
8 7 5
8 7 9
8 9 3
8 9 5
8 9 7
9 3 5
9 3 7
9 3 8
9 5 3
9 5 7
9 5 8
9 7 3
9 7 5
9 7 8
9 8 3
9 8 5
9 8 7
能组成互不相同且无重复数字的三位数: 60
方法二:
import random
lst = [5, 6, 7, 8, 9]
st = set()
# 概率
for i in range(1000):
# 用列表中的数字组成随机数的样本
lst1 = random.sample(lst, 3)
# 排除重复的数字
lst1 = [str(a) for a in lst1]
lst2 = "".join(lst1)
st.add(lst2)
print("共有 {0} 个数字 ,分别为:{1}".format(len(st), st))
输出结果:
共有 60 个数字,分别为:{867, 689, 569, 875, 785, 678, 789, 796, 856, 695, 687, 659, 756, 578, 587, 879, 798, 795, 568, 567, 586, 597, 675, 589, 869, 698, 896, 859, 786, 579, 697, 768, 965, 769, 598, 968, 876, 976, 985, 978, 765, 685, 865, 956, 957, 897, 576, 987, 657, 975, 759, 895, 986, 679, 596, 758, 958, 857, 658, 967}
7、用for循环实现用户登录
要求如下:
提示输入用户名和密码 。
判断用户名和密码是否正确(name=admin,passwd=123456) 。
登录仅有三次机会 ,超过3次会报错 。
for i in range(3):
name = input(请输入用户名:)
passwd = input(请输入密码:)
if name == admin and passwd == 123456:
print(密码正确!)
break
else:
print(密码错误)
print(你还有 %d 次机会 % (2 - i))
else:
print(请退出重新登录!)
方法二:
for i in range(3):
name = input("请输入用户名:")
passwd = input("请输入密码:")
if name == "admin" and passwd =="123456":
print("登录成功")
break
else:
print("登录次数过多 ,登录失败")
输出结果:
请输入用户名:admin
请输入密码:123456
密码正确!
请输入用户名:admin
请输入密码:2344t
密码错误
你还有 2 次机会
请输入用户名: 请输入用户名:admin 请输入密码:2345 请输入用户名:admin 请输入密码:123653 请输入用户名:admin 请输入密码:23344 登录次数过多 ,登录失败 请输入一个数字8 、使用for循环计算7的阶乘。
sum = 7
for n in range(1, 7):
sum = sum * n
print("7的阶乘=", sum)
输出结果:
7的阶乘= 5040
# 使用for循环计算7的阶乘
a = int(input("请输入一个数字"))
n = 1
if a< 0:
print("负数没有阶乘")
elif a == 0:
print("0的阶乘为1")
else:
for i in range(1, a + 1):
n = n * i
print("结果=", n)
# 递归函数实现阶乘
def fact(n):
if n==0:
return 1
else:
return n * fact(n-1)
print("结果=", fact(7))
# 使用数学函数实现阶乘
import math
print("结果=", math.factorial(7))
# 使用lambda实现阶乘
from functools import reduce
a = reduce(lambda x, y:x*y, range(1, 8))
print("结果=", a)
9 、由星号组成的等边三角形 。
n = eval(input("请输入一个整数:"))
for i in range(1, n + 1, 2):
print("{0:^{1}}".format(* * i, n))
请输入一个整数:9
*
***
*****
*******
*********
声明:本站所有文章 ,如无特殊说明或标注 ,均为本站原创发布 。任何个人或组织 ,在未征得本站同意时 ,禁止复制、盗用 、采集 、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!