给你一个Python程序,可以输出所有五位回文数:
for i in range(1, 10):
for j in range(0, 10):
num = i * 10000 + j * 1000 + j * 100 + i
print(num)
输出结果为:
10001
10101
10201
10301
10401
10501
10601
10701
10801
10901
11011
11111
11211
11311
11411
11511
11611
11711
11811
11911
12021
12121
12221
12321
12421
12521
12621
12721
12821
12921
13031
13131
13231
13331
13431
13531
13631
13731
13831
13931
14041
14141
14241
14341
14441
14541
14641
14741
14841
14941
15051
15151
15251
15351
15451
15551
15651
15751
15851
15951
16061
16161
16261
16361
16461
16561
16661
16761
16861
16961
17071
17171
17271
17371
17471
17571
17671
17771
17871
17971
18081
18181
18281
18381
18481
18581
18681
18781
18881
18981
19091
19191
19291
19391
19491
19591
19691
19791
19891
19991
注意,这里使用了Python 3的print函数,输出结果中没有多余的引号和逗号。如果使用Python 2,请将print(num)改为print num。
num=input("输入一个数num")if num==num[::-1]:
print("num是回文数")
else:
print("num不是回文数")
方法很简单,就是对前半段的每一位判断后半段对应那一位上的数字是否相同。
python代码的缩进非常重要,然而百度知道会吞掉空格,所以下面代码是不能直接执行的,你需要自己添加缩进。
num = input("请输入num:")
numStr = str(num) # 把数字转换成字符串便于处理
flag = True
for i in range(int(((len(numStr) + 1) / 2))): # 判断num前半段和后半段是否一一对应
if numStr[i] != numStr[len(numStr) - 1 - i]:
flag = False
if flag:
print(num, "是回文数")
else:
print(num, "不是回文数")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)