Algorithm 2 : computeWhenDouble

hyeongirlife·2021년 9월 13일
0

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개의 댓글

관련 채용 정보