In dit gedeelte zullen we leren hoe je een getal omkeert in Java gebruik makend van herhalingslus , for loop En herhaling .
Om een getal om te keren, volgt u de onderstaande stappen:
- Eerst vinden we de rest van het gegeven getal met behulp van de modulo (%) operator.
- Vermenigvuldig de variabele reverse met 10 en tel de rest erbij op.
- Deel het getal door 10.
Herhaal de bovenstaande stappen totdat het getal 0 wordt.
netwerk architectuur
Er zijn drie manieren om een getal om te keren Java :
- Draai een getal om met de while-lus
- Draai een getal om met de for-lus
- Draai een getal om met recursie
Laten we de bovenstaande stappen in een voorbeeld toepassen.
Voorbeeld
Stel dat we het getal 1234 willen omdraaien.
In dit voorbeeld hebben we drie variabelen met de naam genomen nummer (het getal dat moet worden teruggedraaid), rest (slaat de rest op), achteruit (slaat het omgekeerde nummer op) geïnitialiseerd 0.
Iteratie 1:
wat is android easter eggnummer = 1234
rest = 1234 % 10 = 4
omgekeerd = 0 * 10 + 4 = 0 + 4 = 4
nummer = 1234 / 10 = 123
De waarde van de getalvariabele en de omgekeerde variabele is nu respectievelijk 123 en 4.
Iteratie 2:
aantal = 123rest = 123 % 10 = 3
achteruit = 4 * 10 + 3 = 40 + 3 = 43
getal = 123 / 10 = 12
De waarde van de getalvariabele en de omgekeerde variabele is nu respectievelijk 12 en 43.
Iteratie 3:
getal = 12rest = 12 % 10 = 2
achteruit = 43 * 10 + 2 = 430 + 2 = 432
getal = 12 / 10 = 1
De waarde van de getalvariabele en de omgekeerde variabele is nu respectievelijk 1 en 432.
Iteratie 4:
aantal = 1rest = 1 % 10 = 1
achteruit = 432 * 10 + 1 = 4320 + 1 = 4321
getal = 1 / 10 = 0
Nu wordt het variabele getal 0. Daarom krijgen we het omgekeerde getal 4321 .
Laten we de bovenstaande logica implementeren in a Java-programma .
Draai een getal om met de while-lus
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); } }
Uitvoer
The reverse of the given number is: 456789
Draai een getal om met de for-lus
In het volgende programma hebben we de while-lus vervangen door een for-lus. Het verwijdert ook het laatste cijfer van het getal, na elke iteratie. Wanneer de toestand, aantal!=0 wordt onwaar, de lus wordt afgesloten en we krijgen het omgekeerde getal.
karakter.vergelijk Java
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); } }
Uitvoer
The reverse of the given number is: 654321
In het bovenstaande programma kunnen we de for-lus ook als volgt schrijven:
for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; }
Draai een getal om met recursie
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)>
Uitgang 2:
lijst sorteren java
Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567
Het volgende programma draait beide getallen om, positief en negatief. Wanneer we een getal invoeren, wordt eerst gecontroleerd of het getal positief of negatief is. Als het getal negatief is, wordt het getal omgezet in positief door -1 te vermenigvuldigen. Daarna voert het dezelfde stappen uit (zoals we in de bovenstaande programma's hebben uitgevoerd) om een getal om te keren. Eindelijk controleert het opnieuw of het getal negatief of positief is. Om het getal negatief te maken, wordt het omgekeerde getal opnieuw met -1 vermenigvuldigd.
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; } }
Uitgang 1:
Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789
Uitgang 2:
Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123
10)>