|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
求助,把这个题写成python代码
设a是一个各位数字都不是0且没有重复数字三位数,将组成a的3个数字按从小到大排成的三位数记为I(a),按从大到小排成的三位数记为D(a)(例如a=815,则I(a)=158,D(a)=851),如图所示的程序框图,写出其程序代码。
这是流程图
自己刚把2个函数定义出来,写循环写的一脸懵比,求帮助,谢谢。
def I(x,y,z):
A = [int(x),int(y),int(z)]
A.sort()
B = str(A[0])+str(A[1])+str(A[2])
return int(B)
def D(x,y,z):
A = [int(x),int(y),int(z)]
A.sort(reverse = True)
B = str(A[0])+str(A[1])+str(A[2])
return int(B)
- a=input('请输入三位数a(不重复不含零):')
- while True:
- i=sorted(str(a))
- d=i[::-1]
- da=int(''.join(d))
- ia=int(''.join(i))
- b=da-ia
- print('b=%d-%d=%d'%(da,ia,b))
- if b==int(a):
- print(b)
- break
- a=b
复制代码
|
|