123321 是一个非常特殊的数,从左边读和从右边读是一样的,称这样的数为回文数。输人一个正整数n(1≤n≤54),编程求各位数字之和等于n的5位和6位十进制回文数。按从小到大的顺序输出满足条件的整数。如果输人的数不在指定的范围,输出“轻人错误,请重新输入!,如果没有各位之和与输人的数相等的5位和6位回文数,输“无满足条件的数!
3条回答 默认 最新
关注while True: try: n = int(input()) if 1<=n<=54: break print("输入错误,请重新输入!") except: print("输入错误,请重新输入!") if n == 1: print("无满足条件的数!") else: res = [] for i in range(1,10): for j in range(10): for k in range(10): if i*2+j*2+k==n: res.append(i*10001+j*1010+k*100) elif (i+j+k)*2==n: res.append(i*100001+j*10010+k*1100) if res: print(*sorted(res)) else: print("无满足条件的数!")本回答被专家选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用