В този раздел ще научим как да обърна число в Java използвайки докато цикъл , за цикъл и рекурсия .
За да обърнете число, следвайте стъпките по-долу:
- Първо, намираме остатъка от даденото число, като използваме оператора модулно (%).
- Умножете променливата reverse по 10 и добавете остатъка към нея.
- Разделете числото на 10.
Повторете горните стъпки, докато числото стане 0.
java обратен низ
Има три начини за обръщане на число Java :
- Обърнете число с помощта на цикъла while
- Обърнете число с помощта на цикъл for
- Обърнете число с помощта на рекурсия
Нека приложим горните стъпки в пример.
Пример
Да предположим, че искаме да обърнем числото 1234.
В този пример сме взели три именувани променливи номер (числото, което трябва да се обърне), остатък (съхранява остатъка), обратен (съхранява обратното число) инициализирано 0.
Итерация 1:
оператор if в javascriptчисло = 1234
остатък = 1234 % 10 = 4
обратно = 0 * 10 + 4 = 0 + 4 = 4
число = 1234 / 10 = 123
Сега стойността на числовата и обратната променлива е съответно 123 и 4.
Итерация 2:
число = 123остатък = 123 % 10 = 3
обратно = 4 * 10 + 3 = 40 + 3 = 43
число = 123 / 10 = 12
Сега стойността на числовата и обратната променлива е съответно 12 и 43.
Итерация 3:
число = 12остатък = 12 % 10 = 2
обратно = 43 * 10 + 2 = 430 + 2 = 432
число = 12 / 10 = 1
Сега стойността на числовата и обратната променлива е съответно 1 и 432.
Итерация 4:
число = 1остатък = 1 % 10 = 1
обратно = 432 * 10 + 1 = 4320 + 1 = 4321
число = 1/10 = 0
Сега числото на променливата става 0. Следователно, получаваме обратното число 4321 .
Нека приложим горната логика в a Java програма .
Обърнете число с помощта на цикъла while
ReverseNumberExample1.java
разлика между фирма и фирма
public class ReverseNumberExample1 { public static void main(String[] args) { int number = 987654, reverse = 0; while(number != 0) { int remainder = number % 10; reverse = reverse * 10 + remainder; number = number/10; } System.out.println('The reverse of the given number is: ' + reverse); } }
Изход
The reverse of the given number is: 456789
Обърнете число с помощта на цикъл for
В следващата програма сме заменили цикъла while с цикъл for. Той също така премахва последната цифра от числото след всяка итерация. Когато условието, номер!=0 стане невярно, цикълът излиза и получаваме обратното число.
ReverseNumberExample2.java
public class ReverseNumberExample2 { public static void main(String[] args) { int number = 123456, reverse = 0; //we have not mentioned the initialization part of the for loop for( ;number != 0; number=number/10) { int remainder = number % 10; reverse = reverse * 10 + remainder; } System.out.println('The reverse of the given number is: ' + reverse); } }
Изход
The reverse of the given number is: 654321
В горната програма можем също да напишем for цикъла както следва:
пример за OS с отворен код е
for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; }
Обърнете число с помощта на рекурсия
ReverseNumberExample3.java
import java.util.Scanner; public class ReverseNumberExample3 { //method for reverse a number public static void reverseNumber(int number) { if (number <10) 10 { prints the same number if is less than system.out.println(number); return; } else system.out.print(number % 10); reversenumber(number public static void main(string args[]) system.out.print('enter that you want to reverse: '); scanner sc="new" scanner(system.in); int num="sc.nextInt();" system.out.print('the reverse of given is: method calling reversenumber(num); < pre> <p> <strong>Output 1:</strong> </p> <pre> Enter the number that you want to reverse: 9 The reverse of the given number is: 9 </pre> <p> <strong>Output 2:</strong> </p> <pre> Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567 </pre> <p>The following program reverses both numbers, positive and negative. When we enter a number, it first checks the number is positive or negative. If the number is negative, it converts the number into positive by multiplying -1. After that, it performs the same steps (as we have performed in the above programs) to reverse a number. At last, again it checks the number is negative or positive. To make the number negative, it again multiplies the reverse number by -1.</p> <p> <strong>ReverseNumberExample4.java</strong> </p> <pre> import java.util.*; public class ReverseNumberExample4 { public static void main(String args[]) { System.out.print('Enter the number that you want to reverse: '); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int reverse_number = reverseNumber(n); System.out.println('The reverse of the given number is: '+reverse_number); } //method to reverse a number public static int reverseNumber(int number) { boolean isNoNegative = number = 1) { lastDigit = number % 10; // gives the last digit of the number reverse = reverse * 10 + lastDigit; number = number / 10; // removes the last digit of the number } //makes the number negative return isNoNegative == true? reverse*-1 : reverse; } } </pre> <p> <strong>Output 1:</strong> </p> <pre> Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789 </pre> <p> <strong>Output 2:</strong> </p> <pre> Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123 </pre> <hr></10)>
Резултат 2:
Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567
Следващата програма обръща и двете числа, положителни и отрицателни. Когато въвеждаме число, той първо проверява дали числото е положително или отрицателно. Ако числото е отрицателно, то преобразува числото в положително, като умножи -1. След това той изпълнява същите стъпки (както направихме в горните програми), за да обърне число. Накрая отново проверява дали числото е отрицателно или положително. За да направи числото отрицателно, то отново умножава обратното число по -1.
ReverseNumberExample4.java
import java.util.*; public class ReverseNumberExample4 { public static void main(String args[]) { System.out.print('Enter the number that you want to reverse: '); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int reverse_number = reverseNumber(n); System.out.println('The reverse of the given number is: '+reverse_number); } //method to reverse a number public static int reverseNumber(int number) { boolean isNoNegative = number = 1) { lastDigit = number % 10; // gives the last digit of the number reverse = reverse * 10 + lastDigit; number = number / 10; // removes the last digit of the number } //makes the number negative return isNoNegative == true? reverse*-1 : reverse; } }
Резултат 1:
Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789
Резултат 2:
Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123
10)>