Tässä osiossa opimme kuinka kääntää numero päinvastaiseksi Javassa käyttämällä kun silmukka , silmukalle ja rekursio .
Kääntääksesi numeron, noudata alla olevia ohjeita:
- Ensin löydetään loput annetusta luvusta käyttämällä modulo (%) -operaattoria.
- Kerro muuttujan käänteinen arvo 10:llä ja lisää siihen loppuosa.
- Jaa luku 10:llä.
Toista yllä olevia vaiheita, kunnes numerosta tulee 0.
merkkijono java-menetelmissä
On kolme tapoja kääntää numero sisään Java :
- Käänteinen numero käyttämällä while-silmukkaa
- Käänteinen numero käyttämällä for-silmukkaa
- Käänteinen luku käyttämällä rekursiota
Sovelletaan yllä olevia vaiheita esimerkissä.
Esimerkki
Oletetaan, että haluamme kääntää luvun 1234.
Tässä esimerkissä olemme ottaneet kolme nimettyä muuttujaa määrä (numero käännettävä), loput (varaa loput), käänteinen (tallentaa käänteisen numeron) alustettu 0.
Iteraatio 1:
skanneri javassanumero = 1234
loput = 1234 % 10 = 4
käänteinen = 0 * 10 + 4 = 0 + 4 = 4
numero = 1234 / 10 = 123
Nyt numeron ja käänteisen muuttujan arvo on 123 ja 4.
Iteraatio 2:
numero = 123loppu = 123 % 10 = 3
käänteinen = 4 * 10 + 3 = 40 + 3 = 43
numero = 123 / 10 = 12
Nyt numeron ja käänteisen muuttujan arvo on 12 ja 43.
Iteraatio 3:
numero = 12loput = 12 % 10 = 2
käänteinen = 43 * 10 + 2 = 430 + 2 = 432
numero = 12 / 10 = 1
Nyt numeron ja käänteisen muuttujan arvo on 1 ja 432.
Iteraatio 4:
numero = 1loput = 1 % 10 = 1
käänteinen = 432 * 10 + 1 = 4320 + 1 = 4321
numero = 1/10 = 0
Nyt muuttujan numerosta tulee 0. Siten saamme käänteisen luvun 4321 .
Toteutetaan yllä oleva logiikka kohdassa a Java ohjelma .
Käänteinen numero käyttämällä while-silmukkaa
KäänteinenNumberExample1.java
miten str muunnetaan int:ksi
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); } }
Lähtö
The reverse of the given number is: 456789
Käänteinen numero käyttämällä for-silmukkaa
Seuraavassa ohjelmassa olemme korvanneet while-silmukan for-silmukalla. Se myös poistaa luvun viimeisen numeron jokaisen iteraation jälkeen. Kun ehto, numero! = 0 muuttuu false, silmukka poistuu ja saamme käänteisen luvun.
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); } }
Lähtö
The reverse of the given number is: 654321
Yllä olevassa ohjelmassa voimme myös kirjoittaa for-silmukan seuraavasti:
esimerkki listasta javassa
for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; }
Käänteinen luku käyttämällä rekursiota
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)>
Tulos 2:
Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567
Seuraava ohjelma kääntää molemmat numerot, positiiviset ja negatiiviset. Kun syötämme numeron, se tarkistaa ensin, onko luku positiivinen vai negatiivinen. Jos luku on negatiivinen, se muuntaa luvun positiiviseksi kertomalla -1. Sen jälkeen se suorittaa samat vaiheet (kuten olemme suorittaneet yllä olevissa ohjelmissa) kääntääkseen numeron. Lopulta se tarkistaa jälleen, onko luku negatiivinen tai positiivinen. Jotta luku olisi negatiivinen, se kertoo jälleen käänteisen luvun -1:llä.
KäänteinenNumberExample4.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; } }
Tulos 1:
Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789
Tulos 2:
Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123
10)>