编写一个函数reverse,其功能是将一个正整数反转。如123可以反转为321,3682可以反转为2863,1200可以反转为21。
时间: 2024-09-16 08:04:05 浏览: 45
编写一个Python函数`reverse_number`来反转一个正整数的功能,我们可以将其分解成几个步骤:
1. 首先,我们需要检查输入是否为正整数,如果不是,直接返回错误信息。
2. 然后,我们将数字转换为字符串,因为可以方便地通过字符串操作进行反转。
3. 接着,我们使用字符串切片反转整个字符串。
4. 最后,将反转后的字符串再转换回整数并返回。
以下是这个函数的具体实现:
```python
def reverse_number(n):
# 检查输入是否为正整数
if not isinstance(n, int) or n < 0:
return "输入不是正整数"
# 将整数转换为字符串并反转
reversed_str = str(n)[::-1]
# 再将反转后的字符串转换回整数
reversed_int = int(reversed_str)
return reversed_int
```
现在你可以调用这个函数来测试它的效果,例如:
```python
print(reverse_number(123)) # 输出: 321
print(reverse_number(3682)) # 输出: 2863
print(reverse_number(1200)) # 输出: 21
```
相关问题
C语言:编写一个函数reverse,其功能是将一个正整数反转。如123可以反转为321,3682可以反转为2863,1200可以反转为21。
好的,这是一个编程问题,我可以回答。下面是一个C语言的reverse函数的实现:
```c
#include <stdio.h>
int reverse(int num) {
int temp = 0;
while (num > 0) {
temp = temp * 10 + num % 10;
num /= 10;
}
return temp;
}
int main() {
int num = 123;
printf("%d 反转后为 %d\n", num, reverse(num));
num = 3682;
printf("%d 反转后为 %d\n", num, reverse(num));
num = 1200;
printf("%d 反转后为 %d\n", num, reverse(num));
return 0;
}
```
输出结果为:
```
123 反转后为 321
3682 反转后为 2863
1200 反转后为 21
```
希望能够帮到你。
用c++编写一个函数reverse,其功能是将一个正整数反转。如123可以反转为321,3682可以反转为2863,1200可以反转为21。
在C++中,你可以创建一个名为`reverseInteger`的函数,通过字符串化输入的数字、反转字符串,然后再转换回整数的方式来实现这个功能。这里是一个简单的示例:
```cpp
#include <iostream>
#include <string>
std::string reverseString(const std::string& str) {
std::string reversed = "";
for (int i = str.length() - 1; i >= 0; i--) {
reversed += str[i];
}
return reversed;
}
int reverseInteger(int num) {
std::string strNum = std::to_string(num);
int reversedInt = std::stoi(reverseString(strNum));
return reversedInt;
}
int main() {
int input = 12345;
int reversed = reverseInteger(input);
std::cout << "Original number: " << input << "\n";
std::cout << "Reversed number: " << reversed << "\n";
return 0;
}
```
在这个例子中,我们首先将输入的整数转换成字符串,然后逐字符地逆序字符串,最后再将逆序后的字符串转换回整数。
阅读全文