Python期末考答疑3
Question 1
求出所有的三位及四位数中的回文数,按照 10 个一行输出。所谓回文数是指正读反读都一样的数,如:121,1221……请将下列代码补充完整。
count = 0
for i in range(100, 10000):
s = str(i)
st = ""
for s1 in s:
st = s1 + st
if st == s:
print(i, end=" ")
count += 1
if count % 10 == 0:
print()
这个 Python 代码的目的是找出 100 到 10000 范围内的所有“回文”数字,并且每 10 个数字就打印一次。"回文"数字是指从前往后读和从后往前读都一样的数字,例如 12321 或 1221。
下面是对每行代码的详细解释:
count = 0
:这是一个计数器,用于记录找到的回文数字的数量。for i in range(100, 10000)
: 这是一个循环,范围是从 100 到 9999。这个范围内的每个数字都将被检查是否为回文数字。s = str(i)
: 这行代码将数字i
转换成字符串,方便后续进行字符级别的操作。st = ""
: 这行代码定义一个空字符串st
,用于存放s
的反转字符串。for s1 in s
: 这是一个嵌套循环,遍历s
中的每个字符。st = s1 + st
: 这行代码将s
中的每个字符添加到st
的开头,以此达到反转字符串的目的。if st == s
: 这是一个条件判断,检查原始字符串s
和反转后的字符串st
是否相同。如果相同,那么i
就是一个回文数字。print(i, end=" ")
: 如果找到一个回文数字,就打印出来,并在其后面加一个空格。end=" "
参数是用来控制 print 函数在打印完之后不换行,而是添加一个空格。count += 1
: 如果找到一个回文数字,计数器count
就增加 1。if count % 10 == 0
: 这是一个条件判断,用来检查是否已经找到了 10 的倍数个回文数字。print()
: 如果已经找到了 10 的倍数个回文数字,就打印一个空行,以便于查看输出结果。
总的来说,这段代码的主要逻辑是通过循环和字符串操作,找出并打印出 100 到 10000 范围内的所有回文数字,每 10 个数字打印一次。
Question 2
下面程序的功能是,生成10个三位随机整数,并求出每个随机整数各位数字阶乘之和。并按照如下格式输出:411:4!+1!+1!=26
。请将程序完善。
欢迎关注我公众号:AI悦创,有更多更好玩的等你发现!
公众号:AI悦创【二维码】
AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Linux、Web 全栈」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh
- 0
- 0
- 0
- 0
- 0
- 0