java实现使用while循环编写一个控制台程序从键盘输入一个4位数的整数并对该整数实现反转输出;如输入:1234,输出4321
时间: 2023-05-18 19:05:26 浏览: 87
```java
import java.util.Scanner;
public class ReverseNumber {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个4位数的整数:");
int num = scanner.nextInt();
int reverseNum = 0;
while (num > 0) {
reverseNum = reverseNum * 10 + num % 10;
num /= 10;
}
System.out.println("反转后的整数为:" + reverseNum);
}
}
```
运行结果:
```
请输入一个4位数的整数:1234
反转后的整数为:4321
```
相关问题
请编写一段程序,实现反转一个只有 3 位数的整数: 例如: 输入: number = 249 输出: 942 输入: number = 900 输出: 9
好的,以下是 Python 的代码实现:
```python
number = int(input("请输入一个只有3位数的整数:"))
reverse = 0
while number > 0:
digit = number % 10
reverse = reverse * 10 + digit
number //= 10
print("反转后的数字为:", reverse)
```
运行程序后,输入一个只有 3 位数的整数,程序会将其反转并输出。例如输入 249,输出 942;输入 900,输出 9。
从键盘输入1个万位的整数,判断是否是回文数并控制台上打印。java实现。
这有两种实现方法,一种是将整数换为字符串进行判断,另种是直接对进行判断。
方法一:将整数转换为进行判断
```java
import java.util.Scanner;
class PalindromeNumber {
public void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("一个万位整数");
int num = scanner.nextInt();
String str = String.valueOf(num);
int len = str.length();
boolean isPalindrome = true;
for (int i = 0; i < len / 2; i++) {
if (str.charAt(i) != str.charAt(len - 1 - i)) {
isPalindrome = false;
break;
}
}
if (isPalindrome) {
System.out.println(num + " 是回文数");
} else {
System.out.println(num + " 不是回文数");
}
}
}
```
方法二:直接对整数进行判断
```java
import java.util.Scanner;
public class PalindromeNumber {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个万位整数:");
int num = scanner.nextInt();
int temp = num;
int reversed = 0;
while (temp > 0) {
int digit = temp % 10;
reversed = reversed * 10 + digit;
temp = temp / 10;
}
if (reversed == num) {
System.out.println(num + " 是回文数");
} else {
System.out.println(num + " 不是回文数");
}
}
}
```
这两种方法的思路都比较简单,第一种方法将整数转化为字符串,然后比较字符串的前半部分和后半部分是否相同,如果相同,则是回文数,否则不是回文数。第二种方法则是直接对整数进行判断,将整数的各个位数反转得到一个新数,然后比较新数和原数是否相同,如果相同,则是回文数,否则不是回文数。