python输入一个三位数求倒序数
时间: 2024-03-07 15:45:15 浏览: 135
要求输入一个三位数,然后求其倒序数。首先,我们可以将这个三位数拆分成百位、十位和个位数字。然后,将个位数字乘以100,十位数字乘以10,百位数字不变,再将它们相加即可得到倒序数。
以下是Python代码示例:
```python
num = int(input("请输入一个三位数:"))
# 拆分数字
hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
# 计算倒序数
reversed_num = ones * 100 + tens * 10 + hundreds
print("倒序数为:", reversed_num)
```
相关问题
一个三位正整数倒序输出的程序。用户需要输入一个三位正整数,如果输入的不是一个三位正整数或者不是数字,则输出-1;
```python
num = input("请输入一个三位正整数:")
if not num.isdigit() or len(num) != 3:
print("-1")
else:
print(num[::-1])
```
解释:
首先使用 `input()` 函数获取用户输入的字符串,赋值给变量 `num`。
然后通过 `isdigit()` 方法判断 `num` 是否为数字,并通过 `len()` 函数判断 `num` 是否为三位数。如果不是,则输出 `-1`。注意,这里使用了逻辑运算符 `or`,只要其中一个条件不成立,就会执行 `print("-1")`。
如果 `num` 是一个三位正整数,则使用字符串切片的方式 `num[::-1]` 将其倒序输出。字符串切片的语法是 `[start:stop:step]`,其中 `start` 表示起始位置,`stop` 表示终止位置,`step` 表示步长。当 `start` 和 `stop` 被省略时,表示从字符串的开头和结尾开始切片;当 `step` 被省略时,表示步长为1。因此,`num[::-1]` 就表示从字符串的结尾开始,每次向前取一个字符,直到字符串的开头,从而实现了字符串的倒序输出。
输入一个n位数,输出的位这个n位数的倒序
算法一:使用字符串反转
1. 将输入的数字转化成字符串。
2. 使用字符串的反转函数,将字符串倒序。
3. 将倒序的字符串转化成数字并输出。
Python 代码:
```python
n = int(input("请输入一个n位数:"))
s = str(n)
s_reverse = s[::-1]
n_reverse = int(s_reverse)
print(n_reverse)
```
算法二:使用整数取余
1. 对输入的数字进行取余操作,将每一位的数字依次取出。
2. 将取出的数字依次乘以 10 的相应次方,得到倒序数字。
3. 输出倒序数字。
Python 代码:
```python
n = int(input("请输入一个n位数:"))
n_reverse = 0
i = 0
while n > 0:
n_reverse = n_reverse * 10 + n % 10
n = n // 10
print(n_reverse)
```
算法三:使用递归
1. 对输入的数字进行取余操作,将每一位的数字依次取出。
2. 将取出的数字乘以 10 的相应次方,得到倒序数字。
3. 将输入的数字除以 10,递归调用本身。
4. 输出倒序数字。
Python 代码:
```python
def reverse(n):
if n < 10:
return n
else:
return (n % 10) * (10 ** (len(str(n)) - 1)) + reverse(n // 10)
n = int(input("请输入一个n位数:"))
n_reverse = reverse(n)
print(n_reverse)
```
阅读全文