6174被称为Kaprekar常数[1][2][3],以印度数学家D.R.Kaprekar命名。这一数字因以下特性而引人注目:
取任意四位数,至少使用两个不同的数字。(允许前导零。) 按降序排列数字,然后按升序排列,得到两个四位数的数字,必要时加前导零。 从大数中减去较小的数字。 返回步骤2。在
达塔拉亚拉姆钱德拉卡普雷卡尔
number="0011"
print(" helo world, lets do this: " , number)
i = 0
while number != "6174":
sortedS = sorted(number)
String[] sortedString = array[4] av strangen number
reversed = sorted(number, reverse=True)
sortedIntMin = int(sortedS[0]+sortedS[1]+sortedS[2]+sortedS[3])
reversedIntMax = int(reversed[0]+reversed[1]+reversed[2]+reversed[3])
i += 1
number = str(reversedIntMax - sortedIntMin)
reversedIntMax - sortedIntMin
print("det behovdes " , i , "iterationer for processen")
这是我失败的尝试
^{pr2}$
有三件事是错误的:
另外,如果在排序后将列表联接起来,并且可以直接将其转换为整数,则可以更清楚地完成此操作(感谢endzior的编辑)
试试这个:
number
是一个字符串,因此在前2个if语句中:在另一个答案中,这里不需要
i
变量。在相关问题 更多 >
编程相关推荐