Как произвести реверс числа (Java)
Дана задача:
Напишите метод, который принимает в качестве параметра положительное целое число и возвращает число с противоположным порядком цифр. Например, для параметра 123 метод возвратит 321, для параметра 120 метод вернет 21.
Вот мое решение:
import java.util.*;
class yprajnenie_16_34 {
static Scanner reader=new Scanner (System.in);
public static void main (String [] args)
{
int x; // x - принимаемое в качестве параметра положительное число
x=reader.nextInt();
what(x); // вызов метода типа void
}
public static void what(int x) {
int a; // В нее будет заносится значение последней цифры в числе x
while (x > 0) {
a=x%10; // Сначала в переменную a заносится последняя цифра числа x
System.out.print(a); // Затем она выводится на экран
x=x/10; // А после - число x укорачивается на последний знак
}
Вроде бы условие соблюдено, но фактически нужно, чтобы образовалось новое число с реверсом числа x, и чтобы с этим новым реверснутым числом можно было производить прочие операции.
Не смог придумать, как осуществить такое, поэтому пришел сюда. Помогите!!!
Ответы (1 шт):
Автор решения: Charismatic
→ Ссылка
public class Test {
static Scanner reader = new Scanner(System.in);
public static void main(String[] args) {
int x = Integer.parseInt(reader.nextLine());
System.out.println(what(x));
}
public static int what(int x) {
String s = String.valueOf(x);
String result = "";
for (int i = s.length()-1; i >= 0; i--) {
result+=s.charAt(i);
}
return Integer.parseInt(result);
}
}
Ответ выше решает твою проблему, но если интересно можно еще сделать таким образом.