가수면

[Javascript] 두 정수 사이의 합 본문

CS/코딩 테스트

[Javascript] 두 정수 사이의 합

니비앙 2022. 11. 19. 11:37

문제 설명

두 정수 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의 대소관계는 정해져있지 않습니다.
입출력 예
3 5 12
3 3 3
5 3 12

 


 

처음에 썼던 코드

function solution(a, b) {
  var answer = 0;
  if (a < b) {
      for (let i = a; i <= b; i++) {
      answer += i   
  }
  } else if (a = b) {
      answer = a
  } else {
      for (let i = b ; i <= a; i++) {
      answer += i
      }
  }
  return answer
}

분명 세 부분을 따로 나누어 시험해보면 맞는데 마지막 else 부분에서 엉뚱한 값을 출력하게 되는 코드였다.

코드에 문제를 찾을 수 없었기에 순서를 바꾸어 보았더니 제대로 돌아가기 시작했다.

 

정답(else if와 else 바꿈)

function solution(a, b) {
  var answer = 0;
  if (a < b) {
      for (let i = a; i <= b; i++) {
      answer += i   
  }
  } else if (a > b) {
      for (let i = b ; i <= a; i++) {
      answer += i
      }
  } else {
      answer = a
  }
  return answer
}
Comments