本文主要是介绍Python程序控制结构-课堂练习【pyhton123题库】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
程序控制结构-课堂练习
1、天数计算 II
类别:Python 程序控制结构
获取用户输入月份,输出该月有多少天(考虑闰年)。
**示例1:**
输入:"2000,2"
输出:"29"
**示例2:**
输入:"2018,2"
输出:"28"
**注意:**
- 输入使用
input()
,不要增加额外的提示信息; - Python 中 input 函数返回值是字符串, 可以使用
int(input())
或eval(input())
来进行转换。
代码:
# 定义日历
calendar = {1: 31,2: 28,3: 31,4: 30,5: 31,6: 30,7: 31,8: 31,9: 30,10: 31,11: 30,12: 31
}# 接收用户输入
userText = input()# 对用户输入的数据进行切割
textSplit = userText.split(",")# 获取年份
year = int(textSplit[0])
# 月
month = int(textSplit[1])# 对月份和年份进行判断
if month <= 0 or 13 <= month:print()
elif ((year % 400 == 0) or (year % 4 == 0 and year % 100 != 0)) and (month == 2): # 闰年,且是2月print(calendar[month] + 1)
else:print(calendar[month])
2、三位水仙花数
类别:Python 程序控制结构
“水仙花数” 是指一个三位整数,其各位数字的 3 次方和等于该数本身。
例如:ABC
是一个 “3 位水仙花数”,则:A的三次方+B的三次方+C的三次方 = ABC。
请按照从小到大的顺序输出所有的 3 位水仙花数,请用英文逗号","分隔输出结果。 最后一个水仙花数之后,不出现英文都哈
**示例1:**
输入:无
输出:"**,***,...,***"
注意:输出仅表示格式,不表示对错。
代码:
# 水仙花
def daffodil(num):a = num // 100 # 取百位b = num % 100 // 10 # 取十位c = num % 10 # 取个位sum = pow(a, 3) + pow(b, 3) + pow(c, 3)if num == sum: # 判断是否和原来的相等return Trueelse:return False# 首次进入的函数
if __name__ == '__main__':# 定义一个数组arr = []# 遍历三位数for i in range(100, 1000):# 判断当前数是否是水仙花数isnum = daffodil(int(i))if isnum == True:arr.append(i) # 是水仙花数,添加到列表中# 遍历水仙花列表for i in range(0, len(arr)):print("{},".format(arr[i]) if (int(i) != (len(arr) - 1)) else "{}".format(arr[i]), end="")
3、判断素数
类别:Python 程序控制结构
用户输入一个正整数 N
,判断该数字是否为素数,素数即为质数,一个大于 1 的自然数,除了 1 和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。在一般领域,对正整数 n
,如果用 2 到 n-1 之间的所有整数去除,均无法整除,则 n
为素数。(该算法可优化)
要求:判断用户输入的正整数是否为素数,并输出 “True
” 或者 “False
”。
**示例1:**
输入:"100"
输出:"False"
**示例2:**
输入:"19"
输出:"True"
**注意:**
- 输入使用
input()
,不要增加额外的提示信息 - Python中 input 函数返回值是字符串, 可以使用
int(input())
或eval(input())
来进行转换
代码:
# 用于判断是否是 素数 的方法
def primeNumber(num):# 遍历 2 到 num -1for i in range(2, num):if (num % i) == 0: # 能够整除,说明不是素数return Falsereturn True # 是素数# 接收用户输入
nameText = int(input())# 调用方法判断该数是否数素数
if primeNumber(nameText):print("True") # 是素数
else:print("False") # 不是素数
4、用户登录的三次机会
类别:Python 程序控制结构
给用户三次输入用户名和密码的机会,要求如下:
- 如输入第一行输入用户名为 ‘
Kate
’,第二行输入密码为 ‘666666
’,输出 ‘登录成功!
’,退出程序; - 当一共有 3 次输入用户名或密码不正确输出 “
3次用户名或者密码均有误!退出程序。
”。
**示例1:**
输入:
Kate
666666输出:登录成功!
**示例2:**
输入:
kate
123
alice
456
john
111111输出:3次用户名或者密码均有误!退出程序。
代码:
# 登录判断
def login(userName, userPassword):user = ["Kate", "666666"] # 预先有的账户# 开始判断账号和密码是否正确if (user[0] == userName) and (user[1] == userPassword):return True # 正确else:return False # 错误# 定义首次进入的方法
if __name__ == '__main__':# 循环三次(相当于给三次机会)for i in range(0, 3):# 接收用户输入userName = input() # 接收用户输入的账号userPassword = input() # 输入用户输入的密码# 调用方法判断账号和密码是否正确if login(userName, userPassword):print("登录成功!")exit() # 结束整个程序else:# 三次输入的都不对print("3次用户名或者密码均有误!退出程序。")exit()
5、输出九九乘法表
类别:Python 程序控制结构
打印输出九九乘法表。
**示例1:**
输入:无
输出:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
代码:
# 程序执行首次进入的方法
if __name__ == '__main__':# 外层控制行,内层控制列for i in range(9): # 控制行for j in range(0, i + 1): # 控制列num_i = int(i) + 1num_j = int(j) + 1print("{}*{}={:<2d}".format(num_j, num_i, (num_i * num_j)), end=" ")# 输出完每一行就换行一次print()
先赞后看,养成习惯!!!^ _ ^ ❤️ ❤️ ❤️
码字不易,大家的支持就是我的坚持下去的动力。点赞后不要忘了关注我哦!
这篇关于Python程序控制结构-课堂练习【pyhton123题库】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!