首页 分享 python基础教程100例题: 29&30

python基础教程100例题: 29&30

来源:花匠小妙招 时间:2024-12-18 02:14

29、题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

 30、题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

        今天这两个题可以放在一起,首先可以总体进行分析。首先要了解一个数字是如何被拆分的,也就是如何找到一个数字的每一个位数。我们直接从程序开始讲,以五位数为例。个位:数字 s 除以 10 的余数,然后接下来的每一步该数都除以 10 ,保留商,然后再 除以 10 的余数就分别是十位,百位,千位,最后到万位的时候,商就是万位,不需要再 除以 10 求余数了。

29题:

s = int(input('不多于五位的正整数:'))

a = s % 10

b = int(s / 10) % 10

c = int(s / 100) % 10

d = int(s / 1000) % 10  

e = int(s / 10000)  

if e != 0:

print('5',a,b,c,d,e,sep='')  

elif d != 0:

print('4',a,b,c,d,sep='')

elif c != 0:

print('3',a,b,c,sep='')

elif b != 0:

print('2',a,b,sep='')

else:

print('1,',a)

s2 = int(input('不多于五位的正整数:'))

s2_m = 0

s2_n = s2

while s2_n != 0:

    s2_m = (s2_m * 10) + (s2_n % 10)

    s2_n = int(s2_n / 10)

print(s2_m)

其实这两个代码表示的是同一个意思。都是把每一位分解出来,依次比较。第一个程序更直观,但是代码更复杂。第二个程序代码有一点难理解,但整体的思路是一样的,也更简洁。

30题: 

s = int(input('五位正整数:'))

a = s % 10

b = int(s / 10) % 10

c = int(s / 100) % 10

d = int(s / 1000) % 10  

e = int(s / 10000)  

if a == e and b == d:

print('是回文数')

else:

print('不是回文数')

num = int(input('请输入一个数,判断是否是回文数:'))

num_p = 0

num_t = num

while num_t != 0:  

    num_p = int(num_p * 10) + int(num_t % 10)

    num_t = int(num_t / 10)

if num == num_p:

print(num, '是一个回文数')

else:

print(num, '不是一个回文数')

print(num, num_p)

相关知识

while循环嵌套例题
Python机器学习基础教程
插花艺术基础教程
中国画基础教程——写意花鸟鱼虫【全本
python爱心表白 每天都是浪漫七夕!
郁金香插花技巧基础教程
【Python】基础
【Python绘画】花朵
求100
初学者必备的实用插花基础教程知识

网址: python基础教程100例题: 29&30 https://www.huajiangbk.com/newsview1159283.html

所属分类:花卉
上一篇: 关于Android官方开发教程中
下一篇: Tensorflow:Tenso

推荐分享