Python 实验报告03选择与循环~附带每句注释
1.编写程序,判断某个⽇期是该年第⼏天。
2.统计考试成绩中优秀、良、中、及格、不及格的⼈数。
打印n n的乘法⼝诀表:给定9以内任意整数n,打印n n的乘法⼝诀表。4.编写程序,⽤户从键盘输⼊⼩于1000的整数,对其进⾏因式分解。例如:10=2×5, 60=2 ×2×3×5 。import time def demo (year , month , day ): # 定义函数,函数的参数有year ,month ,day ,分别代表年⽉⽇ day_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] # 将⼀年中每个⽉份的天数列举出来存在变量day_month 中 if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0): # 判断是否是闰年 day_month [1] = 29 # 是闰年2⽉为修改为29天 if month == 1: # 如果⼀⽉ print (day ) # 直接输出天数 else : # 如果不是⼀⽉ if year > 0 and 0 < month < 13 and 0 < day < 32: # 判断输⼊的值是否合法 print (sum (day_month [:month - 1]) + day ) # 合法时输出总天数 else : # 不合法 print ("输⼊的值有误!请重新输⼊!") # 提醒读者year = int (input ("请输⼊年:")) # 输⼊年份month = int (input ("请输⼊⽉:")) # 输⼊⽉份day = int (input ("请输⼊⽇:")) # 输⼊天数demo (year , month , day ) # 调⽤函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21scores = eval (input ("请输⼊成绩列表:")) # 输⼊⼀个成绩列表并赋值给变量scores groups = {'优秀': 0, '良': 0, '中': 0, '及格': 0, '不及格': 0} # 输⼊⼀个字典,此时键代表等级,值相当于计数器,初始值都为零for score in scores : # 在成绩列表scores 中遍历 if score >= 90: # 如果成绩不⼩于90 groups ['优秀'] = groups ['优秀'] + 1 # 优秀⼈数加⼀ elif score >= 80: # 如果成绩不⼩于80并且⼩于90 groups ['良'] = groups ['良'] + 1 # 良⼈数加⼀ elif score >= 70: # 如果成绩不⼩于70并且⼩于80 groups ['中'] = groups ['中'] + 1 # 中⼈数加⼀ elif score >= 60: # 如果成绩不⼩于60并
且⼩于70 groups ['及格'] = groups ['及格'] + 1 # 及格⼈数加⼀ else : # 如果上述条件都不满⾜ groups ['不及格'] = groups ['不及格'] + 1 # 不及格⼈数加⼀print (groups ) # 输出字典并在字典中显⽰各等级⼈数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15n = int (input ('请输⼊⼀个整数:')) # 输⼊⼀个整数并赋值给变量n for i in range (1, n + 1): # 外层循环,从1开始内层循环⼀遍后加1,到n 停⽌ for j in range (1, i + 1): # 内层循环,循环遍历1~i ,循环⼀次后外层循环加1 print ('{0}*{1}={2}'.format (j , i , i * j ).ljust (8), end =' ') # 输出乘法表,format ()将字符串格式化为整形,函数ljust ()起左对齐作⽤ # print ("%d*%d=%d" % (j , i , j * i ), end =" ") print () # 内层循环⼀遍后起换⾏作⽤
1
2
3
4
5
6
7
8
x = int (input ('输⼊⼩于1000的正整数:')) # 输⼊⼩于1000的正整数并赋值给变量x t = x # 将x 赋值给变量t i = 2 # 将常量2赋值给变量i result = [] # 定义⼀个空列表while True : # 执⾏循环 if t == 1: # 如果t 等于1,没有因数,强制退出结束循环 break if t % i == 0: # 如果该数字对i 取模为零,则此值为该数因数 result .append (i ) # 将该因数放⼊列表result t = t // i # 让该数等于该数除i 并向下取整,继续循环 else : # 如果该数字对i 取模不为零 i = i + 1 # 让i 等于⾃⾝加1,继续循环print (f '{x}={"*".join(map(str, result))}') # 输出该数因式分解后的式⼦"*".join ()将后⾯每两个因式中⽤*连接,# map (str ,result ))将result 列表中的每个整数转换为字符串,f ''表⽰将字符串格式化,输出表达式12345678910111213141516
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论