두 정수 사이의 합

젬마·2023년 2월 22일
0

문제

문제 설명

두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.

제한 사항

  • a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
  • a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
  • a와 b의 대소관계는 정해져있지 않습니다.

풀이

나의 코드

function solution(a, b) {
    let smaller;
    let bigger;
    
    if(a-b > 0) {
        smaller = b;
        bigger = a;
    } else if(a-b < 0){
        smaller = a;
        bigger = b;
    }
    
    for (let i = smaller + 1; i <= bigger; i++) {
        smaller += i;
    }

    return a === b ? a : smaller; 
}

설명

  • a - b가 양수인지 음수인지에 따라 smaler, bigger 설정
  • smaller + 1 ~ bigger까지 for문 돌려서 smaller에 1씩 올려가며 더함
  • a와 b가 같다면 a(둘 중 아무 값이나 상관 x), 아니라면 위에서 계산한 값(smaller에 재할당된)을 반환

개선된 코드

function solution(a, b) {
	let sum = Math.min(a,b);
    
    for (let i = Math.min(a,b) + 1; i <= Math.max(a, b); i++) {
        sum += i;
    }
    
    return a === b ? a : sum;
}

설명

  • 아 맞다 Math 함수 ........................
profile
취준생은 프론트엔드의 꿈을 꾸는가

0개의 댓글