В тази програма ще се научите да обръщате число с помощта на цикъл while и for цикъл в Java.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:
- Java докато и да … докато Loop
- Java за Loop
Пример 1: Обърнете число с помощта на цикъл while в Java
public class ReverseNumber ( public static void main(String() args) ( int num = 1234, reversed = 0; while(num != 0) ( int digit = num % 10; reversed = reversed * 10 + digit; num /= 10; ) System.out.println("Reversed Number: " + reversed); ) )
Изход
Обърнат номер: 4321
В тази програма цикълът while се използва за обръщане на число, както е дадено в следните стъпки:
- Първо, остатъкът от числото, разделено на 10, се съхранява в променливата цифра. Сега цифрата съдържа последната цифра от числото, т.е. 4.
цифрата след това се добавя към обратната променлива след умножаването й с 10. Умножението по 10 добавя ново място в обърнатото число. Едно място, умножено по 10, ви дава десето място, десето - стотно и т.н. В този случай обърнатото съдържа 0 * 10 + 4 = 4.
след това num се разделя на 10, така че сега съдържа само първите три цифри: 123. - След втората итерация цифрата е равна на 3, обърнатата е равна на 4 * 10 + 3 = 43 и num = 12
- След трета итерация цифрата е равна на 2, обърната е равна на 43 * 10 + 2 = 432 и num = 1
- След четвърта итерация цифрата е равна на 1, обърната е равна на 432 * 10 + 1 = 4321 и num = 0
- Сега num = 0, така че тестовият израз е
num != 0
неуспешен и докато цикълът излиза. обърнато вече съдържа обърнатото число 4321.
Пример 2: Обърнете число с помощта на цикъл for в Java
public class ReverseNumber ( public static void main(String() args) ( int num = 1234567, reversed = 0; for(;num != 0; num /= 10) ( int digit = num % 10; reversed = reversed * 10 + digit; ) System.out.println("Reversed Number: " + reversed); ) )
Изход
Обърнат номер: 7654321
В горната програма цикълът while се заменя с цикъл for, където:
- не се използва израз на инициализация
- тестовият израз остава същият (
num != 0
) - изразът за актуализиране / увеличаване съдържа
num /= 10
.
И така, след всяка итерация се изпълнява изразът за актуализация, който премахва последната цифра от числото.
Когато цикълът for излезе, reversed ще съдържа обърнатото число.