Algorithm 2 : computeWhenDouble

hyeongirlife·2021년 9월 13일

Algorithm

목록 보기
2/30

연이율을 입력받아 원금이 2배 이상이 될 때 까지 걸리는 시간(년)을 리턴해야 합니다.

예시

let output = computeWhenDouble(7);
console.log(output); // --> 11
output = computeWhenDouble(10);
console.log(output); // --> 8

생각
1. 연 이율을 입력받아 1년 이자를 구한다.
2. 구한 이자를 원금에 더해나간다. 반복문을 사용해야 겠구나
3. 처음원금2 === 현재원금 이면 시간(년)을 리턴
4. 처음원금
2 !== 현재원금 이면 계속 더해나가자.
5. 필요변수 : 이자율, 누적금액, 년

아이디어 : (원금+이자율)^년 = 2 -> 검색해서 알게 됨.

풀이1

function computeWhenDouble(intersestRate){
  let year = 1;
  while(true){
    if((1+(interestRate/100))**year >= 2){

> 풀이2
```jsx
function computeWhenDouble(interestRate){
  let rate = 1 + interestRate/100;
  let principal = 1;
  let year = 0;
  while (principal < 2){
    principal = principal * rate;
    year++
  }
  return year;

깨달은 점
1. 연이율과 원금의 2배 간의 관계를 알게 됐다.
2. for문만 쓰다가 while문을 쓰니 어색했다. 특정 인덱스의 조건이 없다면 while문을 써야함을 이번 기회를 통해 알게됐다.

profile
머릿속에 있는 내용을 정리하기

0개의 댓글