Python:数字交换

2024-10-08 18:23:29 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我要写的程序:

写一个程序,它总是产生两个三位数的和 另外两个三位数的差值,如1089,前提是 所选数字的第一个和第三个数字相差两个或更多。为了这件事发生,迅速 用户给你一个三位数的数字,例如532。接这个号码,532,兑换 第一个和最后一个数字是235。现在减去235(两个数字中较小的一个) 从532(两个数字中较大的一个)得到297。接受差异, 297,把它的第一个和第三个数字换成792。把297加到792上,结果是 1089如果用户没有得到1089,通知他/她原始条目的 第一个和最后一个数字相差小于2。在

这就是我目前所掌握的,它给了我一个错误。我是python和编程新手,如果你能帮我,我将不胜感激。在

到目前为止,我得到的是:

Have user give 3 digit number

threeDigit = str(input("Please enter a 3 digit number without spaces between the numbers.\t"))

#Exchange first and last digits

exchangedNumber = str(threeDigit)[::-1]
print(exchangedNumber)

#Subtract smaller number from greater one

numberOne = exchangedNumber - threeDigit
numberTwo = threeDigit - exchangedNumber

if exchangedNumber>threeDigit: print(numberOne)

if threeDigit>exchangedNumber: print(numberTwo)

Tags: 用户程序numberif数字printdigitstr
1条回答
网友
1楼 · 发布于 2024-10-08 18:23:29

你可能需要这样做

numberOne = int(exchangedNumber) - int(threeDigit)
numberTwo = int(threeDigit) - int(exchangedNumber)

您需要将它们转换为integer类型才能得到预期的结果,最初是string类型。学习有关type conversions的详细信息

相关问题 更多 >

    热门问题