logo

Hvordan reversere et tall i Java

I denne delen vil vi lære hvordan reversere et tall i Java ved hjelp av mens loop , for løkke og rekursjon .

For å reversere et tall, følg trinnene nedenfor:

  • Først finner vi resten av det gitte tallet ved å bruke modulo (%) operatoren.
  • Multipliser variabelen revers med 10 og legg til resten i den.
  • Del tallet med 10.

Gjenta trinnene ovenfor til tallet blir 0.

arveprogram i python
Hvordan reversere et tall i Java

Det er tre måter å reversere et tall på Java :

  • Snu et tall med while-løkken
  • Snu et tall med for loop
  • Snu et tall ved å bruke rekursjon

La oss bruke trinnene ovenfor i et eksempel.

Eksempel

Anta at vi ønsker å reversere tallet 1234.

I dette eksemplet har vi tatt tre variabler navngitt Antall (tallet som skal reverseres), rest (lagrer resten), omvendt (lagrer det motsatte tallet) initialisert 0.

Iterasjon 1:

modifikasjonstaster
nummer = 1234
resten = 1234 % 10 = 4
revers = 0 * 10 + 4 = 0 + 4 = 4
tall = 1234 / 10 = 123

Nå er verdien av tallet og reversvariabelen henholdsvis 123 og 4.

Iterasjon 2:

tall = 123
resten = 123 % 10 = 3
revers = 4 * 10 + 3 = 40 + 3 = 43
tall = 123 / 10 = 12

Nå er verdien av tallet og reversvariabelen henholdsvis 12 og 43.

Iterasjon 3:

tall = 12
resten = 12 % 10 = 2
revers = 43 * 10 + 2 = 430 + 2 = 432
tall = 12 / 10 = 1

Nå er verdien av tallet og reversvariabelen henholdsvis 1 og 432.

Iterasjon 4:

tall = 1
resten = 1 % 10 = 1
revers = 432 * 10 + 1 = 4320 + 1 = 4321
tall = 1 / 10 = 0

Nå blir variabeltallet 0. Derfor får vi det motsatte tallet 4321 .

ulemper med nettbank

La oss implementere logikken ovenfor i en Java-program .

Snu et tall med while-løkken

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); } } 

Produksjon

 The reverse of the given number is: 456789 

Snu et tall med for loop

I det følgende programmet har vi erstattet while-løkken med en for-løkke. Den fjerner også det siste sifferet i tallet, etter hver iterasjon. Når tilstanden, tall!=0 blir falsk, går løkken ut og vi får det reverserte tallet.

ReverseNumberExample2.java

hvordan oppfant skolen
 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); } } 

Produksjon

 The reverse of the given number is: 654321 

I programmet ovenfor kan vi også skrive for-løkken som følger:

 for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; } 

Snu et tall ved å bruke rekursjon

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(&apos;Enter the number that you want to reverse: &apos;); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int reverse_number = reverseNumber(n); System.out.println(&apos;The reverse of the given number is: &apos;+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)>

Utgang 2:

 Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567 

Følgende program snur både tall, positive og negative. Når vi legger inn et tall, sjekker det først at tallet er positivt eller negativt. Hvis tallet er negativt, konverterer det tallet til positivt ved å multiplisere -1. Etter det utfører den de samme trinnene (som vi har utført i de ovennevnte programmene) for å snu et tall. Til slutt sjekker den igjen at tallet er negativt eller positivt. For å gjøre tallet negativt, multipliserer det igjen det omvendte tallet med -1.

ReverseNumberExample4.java

 import java.util.*; public class ReverseNumberExample4 { public static void main(String args[]) { System.out.print(&apos;Enter the number that you want to reverse: &apos;); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int reverse_number = reverseNumber(n); System.out.println(&apos;The reverse of the given number is: &apos;+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; } } 

Utgang 1:

 Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789 

Utgang 2:

 Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123