V této části se naučíme jak obrátit číslo v Javě použitím zatímco smyčka , pro smyčku a rekurze .
Chcete-li obrátit číslo, postupujte podle následujících kroků:
- Nejprve najdeme zbytek daného čísla pomocí operátoru modulo (%).
- Vynásobte proměnnou reverse 10 a přidejte do ní zbytek.
- Vydělte číslo 10.
Opakujte výše uvedené kroky, dokud nebude číslo 0.
kolo matematika java
Existují tři způsoby, jak obrátit číslo Jáva :
- Obrátit číslo pomocí cyklu while
- Otočte číslo pomocí cyklu for
- Obrátit číslo pomocí rekurze
Aplikujme výše uvedené kroky na příkladu.
Příklad
Předpokládejme, že chceme obrátit číslo 1234.
V tomto příkladu jsme vzali tři proměnné pojmenované číslo (číslo se má obrátit), zbytek (uloží zbytek), zvrátit (uloží opačné číslo) inicializováno 0.
Iterace 1:
linuxové příkazy vytvořit složkučíslo = 1234
zbytek = 1234 % 10 = 4
obráceně = 0 * 10 + 4 = 0 + 4 = 4
číslo = 1234 / 10 = 123
Nyní je hodnota proměnné číslo 123 a reverzní proměnné 4.
Iterace 2:
číslo = 123zbytek = 123 % 10 = 3
obráceně = 4 * 10 + 3 = 40 + 3 = 43
číslo = 123 / 10 = 12
Nyní je hodnota proměnné číslo 12 a reverzní proměnné 43.
Iterace 3:
číslo = 12zbytek = 12 % 10 = 2
obráceně = 43 * 10 + 2 = 430 + 2 = 432
číslo = 12/10 = 1
Nyní je hodnota proměnné číslo a obrácená hodnota 1 a 432.
Iterace 4:
číslo = 1zbytek = 1 % 10 = 1
zpětný chod = 432 * 10 + 1 = 4320 + 1 = 4321
číslo = 1/10 = 0
Nyní se číslo proměnné stane 0. Dostaneme tedy obrácené číslo 4321 .
Implementujme výše uvedenou logiku v a Java program .
Obrátit číslo pomocí cyklu 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); } }
Výstup
Herečka Sai Pallavi
The reverse of the given number is: 456789
Otočte číslo pomocí cyklu for
V následujícím programu jsme nahradili smyčku while smyčkou for. Po každé iteraci také odstraní poslední číslici čísla. Když je podmínka, číslo!=0 se stane false, smyčka opustí a dostaneme obrácené číslo.
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); } }
Výstup
The reverse of the given number is: 654321
Ve výše uvedeném programu můžeme také napsat cyklus for takto:
for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; }
Obrátit číslo pomocí rekurze
ReverseNumberExample3.java
typy smyček java for
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)>
Výstup 2:
Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567
Následující program obrátí obě čísla, kladná i záporná. Když zadáme číslo, nejprve zkontroluje, zda je číslo kladné nebo záporné. Pokud je číslo záporné, převede číslo na kladné vynásobením -1. Poté provede stejné kroky (jak jsme provedli ve výše uvedených programech) pro obrácení čísla. Nakonec znovu zkontroluje, zda je číslo záporné nebo kladné. Aby bylo číslo záporné, opět vynásobí opačné číslo -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; } }
Výstup 1:
Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789
Výstup 2:
Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123
10)>