이번 문제는 상식의 문제였다. 그러나 상식이 부족한 나한테는 조금 당황스러웠으나 결국 풀긴 풀었다..
문제는 다음과 같다.
문제 :
연이율을 입력 받고 원금이 2배 이상이 될 때까지 걸리는 시간을 리턴해야한다.
입력 :
인자 1 : interest Rate (number 타입의 연이율 (%))
출력 :
number 타입을 리턴해야함
입출력 예시
let output = computeWhenDouble(7);
console.log(output); // --> 11
output = computeWhenDouble(10);
console.log(output); // --> 8
풀이 코드 설명
function computeWhenDouble(interestRate) {
//초기 원금
init = 1;
//원금의 2배
last = init * 2;
//연 이자율 계산
interest = 1 + interestRate / 100;
//year 선언
year = 0;
//원금이 2배 이하일 때 무한 루프
while (init < last) {
init = init * interest;
year++;
}
//정답 year 리턴
return year;
}
//다른 풀이
function computeWhenDouble(interestRate) {
let rate = 1 + interestRate / 100;
let principal = 1;
let year = 0;
while (principal < 2) {
principal = principal * rate;
year++;
}
return year;
}
알고리즘 문제풀이 - firstCharacter (0) | 2022.12.19 |
---|---|
알고리즘 문제풀이 - powerOfTwo (0) | 2022.12.19 |
transformFirstAndLast 알고리즘 문제 풀이 (0) | 2022.12.16 |
[DFS] 바코드 (0) | 2022.12.14 |
[DFS / BFS] 연결된 정점들 (0) | 2022.12.14 |