# Math.sqrt() 와 Math.pow()를 배웠다.
전자는 제곱근을 구해주고 후자는 거듭제곱 값을 구해주는 메서드다.
제곱근이고 거듭제곱이고 뭐시기고 나는 고등학교 시절에도 이미 수포자여서 이렇게 적어놓으면 나중에 내 자신이 봐도 이건 뭔 말이지 할 것이기 때문에 미리 미래의 내 자신에게 말하고 싶다.
인텔리제이로 들고가서 그냥 아무 숫자나 넣고 찍어보면 알기 쉽다.
# (배열).clone; 이라는 메서드를 배웠다.
말 그대로 배열을 복사해온다. 대신 복사해온 배열을 담아줄 새로운 공간을 가진 배열이 필요하다.
# While에 대해서 새롭게 배웠다.
class Solution {
public boolean solution(int x) {
int sum = 0;
int a = x;
while (a >= 1) {
sum += a % 10;
a /= 10;
}
if (x % sum == 0) {
return true;
} else
return false;
}
}
여기서 대체 a /= 10; 이 뭐하는 놈인고 한참을 고민했는데,
while문 아래 break가 없기 때문에
x에 18이 들어간다고 치면
loop1 에서는 sum은 8, a 는 1 ( 에서 while이 끝나는게 아니고 조건이 만족되지 않아서 처 음 으 로 되돌아간다.)
그래서
loop2 에서는 sum이 a(loop1에서 넘어왔기 때문에 1이 들어있음) % 10 해서 기존 8에 1을 더해서 9
a는 1/10 이기 때문에 0이 되어 while문이 더 이상 돌지 않는다.
'TIL' 카테고리의 다른 글
220519 TIL (0) | 2022.05.19 |
---|---|
220518 TIL (0) | 2022.05.18 |
220516 TIL (0) | 2022.05.18 |
220515 WIL (0) | 2022.05.15 |
220515 TIL (0) | 2022.05.15 |