Bu bölümde öğreneceğiz Java'da bir sayı nasıl tersine çevrilir kullanarak döngü sırasında , döngü için Ve yineleme .
Bir sayıyı tersine çevirmek için aşağıdaki adımları izleyin:
- Öncelikle modulo(%) operatörünü kullanarak verilen sayının kalanını buluyoruz.
- Ters değişkeni 10 ile çarpın ve kalanı buna ekleyin.
- Sayıyı 10'a bölün.
Sayı 0 olana kadar yukarıdaki adımları tekrarlayın.
Java'da ayrı dize
Var üç bir sayıyı tersine çevirmenin yolları Java :
- While döngüsünü kullanarak bir sayıyı tersine çevirme
- For döngüsü kullanarak bir sayıyı tersine çevirme
- Özyinelemeyi kullanarak sayıyı tersine çevirme
Yukarıdaki adımları bir örnek üzerinde uygulayalım.
Örnek
Diyelim ki 1234 sayısını tersine çevirmek istiyoruz.
Bu örnekte, adlı üç değişkeni aldık. sayı (tersine çevrilecek sayı), kalan (kalanını saklar), tersi (ters sayıyı saklar) 0 olarak başlatıldı.
Yineleme 1:
linux için görev yöneticisisayı = 1234
kalan = %1234 10 = 4
ters = 0 * 10 + 4 = 0 + 4 = 4
sayı = 1234 / 10 = 123
Artık sayının ve ters değişkenin değeri sırasıyla 123 ve 4'tür.
Yineleme 2:
sayı = 123kalan = %123 10 = 3
ters = 4 * 10 + 3 = 40 + 3 = 43
sayı = 123 / 10 = 12
Artık sayının ve ters değişkenin değeri sırasıyla 12 ve 43'tür.
Yineleme 3:
sayı = 12kalan = %12 10 = 2
ters = 43 * 10 + 2 = 430 + 2 = 432
sayı = 12 / 10 = 1
Artık sayının ve ters değişkenin değeri sırasıyla 1 ve 432'dir.
Yineleme 4:
dosya java'da açıldısayı = 1
kalan = %1 10 = 1
ters = 432 * 10 + 1 = 4320 + 1 = 4321
sayı = 1 / 10 = 0
Artık değişken numarası 0 olur. Dolayısıyla ters sayıyı elde ederiz. 4321 .
Yukarıdaki mantığı bir uygulamada uygulayalım. Java programı .
While döngüsünü kullanarak bir sayıyı tersine çevirme
TersNumberExample1.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); } }
Çıktı
The reverse of the given number is: 456789
For döngüsü kullanarak bir sayıyı tersine çevirme
Aşağıdaki programda while döngüsünü for döngüsüyle değiştirdik. Ayrıca her yinelemeden sonra sayının son rakamını da kaldırır. Durum ne zaman, sayı!=0 false olur, döngüden çıkar ve ters sayıyı alırız.
TersSayıÖrnek2.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); } }
Çıktı
The reverse of the given number is: 654321
Yukarıdaki programda for döngüsünü şu şekilde de yazabiliriz:
for(;number != 0;) { int remainder = number % 10; reverse = reverse * 10 + remainder; number=number/10; }
Özyinelemeyi kullanarak sayıyı tersine çevirme
TersSayıÖrnek3.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)>
Çıkış 2:
Enter the number that you want to reverse: 7654123 The reverse of the given number is: 3214567
Aşağıdaki program pozitif ve negatif sayıların her ikisini de tersine çevirir. Bir sayı girdiğimizde öncelikle sayının pozitif mi negatif mi olduğunu kontrol ediyor. Sayı negatifse sayıyı -1 ile çarparak pozitife çevirir. Daha sonra bir sayıyı tersine çevirmek için aynı adımları (yukarıdaki programlarda uyguladığımız gibi) gerçekleştirir. Son olarak tekrar sayının negatif mi yoksa pozitif mi olduğunu kontrol eder. Sayıyı negatif yapmak için ters sayıyı yine -1 ile çarpar.
bahar önyükleme mimarisi
TersNumberExample4.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; } }
Çıkış 1:
Enter the number that you want to reverse: -98765 The reverse of the given number is: -56789
Çıkış 2:
Enter the number that you want to reverse: 321987 The reverse of the given number is: 789123
10)>