Java编写,有一个整数,将该数的最后一位移到第一位,则新的整数变成了原数的2倍,求该数。
时间: 2024-03-24 16:39:25 浏览: 96
可以通过以下步骤来解决这个问题:
1. 读取输入的整数n。
2. 计算n的位数,以便确定最后一位的值。
3. 计算最后一位的值和剩余的数字,然后将最后一位移到第一位。
4. 检查新数字是否等于原数字的2倍。
5. 如果是,则输出新数字,否则输出 "无解"。
下面是Java代码实现:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int digits = String.valueOf(n).length();
int lastDigit = n % 10;
int rest = n / 10;
int newNumber = (int) (lastDigit * Math.pow(10, digits - 1) + rest);
if (newNumber == n * 2) {
System.out.println(newNumber);
} else {
System.out.println("无解");
}
}
}
```
输入:1234
输出:4123
解释:原数字是1234,最后一位是4,剩余的数字是123。将4移到第一位,得到新数字4123。由于4123等于1234的2倍,因此输出4123。
阅读全文