一个三位正整数倒序输出的程序。用户需要输入一个三位正整数,如果输入的不是一个三位正整数或者不是数字,则输出-1;
时间: 2024-04-30 14:23:15 浏览: 128
```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]` 就表示从字符串的结尾开始,每次向前取一个字符,直到字符串的开头,从而实现了字符串的倒序输出。
相关问题
C++从键盘上得到一个三位正整数n,请你将这三位数倒序输出
在C++中,你可以使用标准库中的`cin`和`cout`来实现这个功能。这里有一个简单的例子:
```cpp
#include <iostream>
int main() {
int n;
std::cout << "请输入一个三位正整数:";
// 使用 cin 获取用户输入
std::cin >> n;
// 检查输入是否为三位数
while(n < 100 || n > 999) {
std::cout << "输入有误,请输入一个三位正整数:";
std::cin >> n;
}
// 将数字反转
int reversed_num = ((n % 10) * 100) + ((n / 10) % 10) * 10 + (n / 100);
std::cout << "三位数的倒序形式是: " << reversed_num << "\n";
return 0;
}
```
在这个程序里,我们首先提示用户输入一个三位数,然后检查输入的值是否满足条件。如果输入不是三位数,我们会再次提示用户重新输入。一旦得到一个有效的三位数,我们通过取余数、除法的方式将其反转。
java从键盘输入一个三位正整数n,将整数n的个位、十位、百位倒序生成一个新数字并进行输出。例如,输入521,则输出125
在Java中,你可以使用Scanner类从用户键盘获取输入,然后通过字符串处理和整数转换来实现这个功能。以下是一个简单的示例程序:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个三位正整数:");
// 获取输入并验证是否为三位数
int num;
while (!scanner.hasNextInt() || scanner.nextInt() < 100 || scanner.nextInt() > 999) {
System.out.println("输入错误,请确保输入的是三位正整数:");
scanner.next(); // 清除无效输入
}
num = scanner.nextInt();
// 将数字转换为字符串,取每一位反转,并重新组合成新的数字
String reversedNum = Integer.toString(num).chars().reversed()
.mapToObj(c -> (char) c)
.collect(Collectors.joining());
System.out.println("数字的个位、十位、百位倒序后的结果为: " + reversedNum);
scanner.close();
}
}
```
在这个程序中,我们首先检查用户的输入是否有效,然后使用`Integer.toString()`将整数转换为字符串,接着反转字符数组,最后再转换回整数形式。
阅读全文