π https://insite.tistory.com/21
while (num != 0) {
int digit = num % 10; // νμ¬ μ«μμ μΌμ μ리 μ
reverse = reverse * 10 + digit; // λ€μ§μ μ«μμ νμ¬ μ리μ μλ₯Ό μΆκ°
num /= 10; // νμ¬ μ리μ μλ₯Ό μ κ±°
}
System.out.println(reverse); // λ€μ§ν μ«μ μΆλ ₯
π μμ
num / 10 = λͺ« x1, λλ¨Έμ§ y1
첫 μλ μ) 0 * 10 + λλ¨Έμ§ y1 = y1 0 0
y1 _ _
1ν μ€ν μ μ»μ λͺ«μ λ€μ 10μΌλ‘ λλλ€.
λͺ« x1 / 10 = λͺ« x2, λλ¨Έμ§ y2
λλ¨Έμ§λ₯Ό μ«μμ 2λ²μ§Έ ν° μλ¦Ώμμ λ°°μΉνλ€.
λ λ²μ§Έ μλ) λλ¨Έμ§ y1 * 10 + λλ¨Έμ§ y2 = y1 y2 0
y1 y2 _
.
.
.
πββοΈ μ«μλ₯Ό μ΄μ©ν μμ
EX1) 734λ₯Ό λ€μ§μ΄ λ΄ μλ€.
[1ν]
1. 734 / 10 = λͺ« 73, λλ¨Έμ§ 4
2. 0 * 10 + 4(νμ¬ λλ¨Έμ§) = 4
β‘οΈ 4 _ _
[2ν]
1. 73 / 10 = λͺ« 7, λλ¨Έμ§ 3
2. 4 * 10 + 3(νμ¬ λλ¨Έμ§) = 43
β‘οΈ 4 3 _
[3ν]
1. 7 / 10 = λͺ« 0, λλ¨Έμ§ 7
2. 43 * 10 + 7(νμ¬ λλ¨Έμ§) = 437
β‘οΈ 4 3 7
β¨οΈ μ½λλ₯Ό μ΄μ©ν μμ
// 첫 λ²μ§Έ λ°λ³΅
int digit = num % 10; // 734 % 10 = 4
reverse = reverse * 10 + digit; // 0 * 10 + 4 = 4
num /= 10; // 734μ 10μΌλ‘ λλ λͺ«μ 73
// λ λ²μ§Έ λ°λ³΅
digit = num % 10; // 73 % 10 = 3
reverse = reverse * 10 + digit; // 4 * 10 + 3 = 43
num /= 10; // 73μ 10μΌλ‘ λλ λͺ«μ 7
// μΈ λ²μ§Έ λ°λ³΅
digit = num % 10; // 7 % 10 = 7
reverse = reverse * 10 + digit; // 43 * 10 + 7 = 437
num /= 10; // 7μ 10μΌλ‘ λλ λͺ«μ 0
// numμ΄ 0μ΄ λμ΄ λ°λ³΅ μ’
λ£