JAVA SCRIPT/코딩테스트
프로그래머스 :: 두 정수 사이의 합 (JS)
ㅈㅣㄴ
2023. 12. 5. 16:16
프로그래머스 :: 두 정수 사이의 합 (JS)
문제 설명
두 정수 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 의 대소관계는 정해져있지 않습니다.
입출력 예
a b return 3 5 12 3 3 3 5 3 12
문제 풀이
function solution(a, b) { let result = 0; let start = ((a-b) > 0) ? b : a; let stop = ((a-b) > 0) ? a : b; for (let i = start; i <= stop; i++) { result += i; } return result; }
- for 문을 이용하였다.
- ? 연산자 를 활용하여 for문의 start 값과 stop 값을 지정해주었다.
- 삼항 조건 연산자
- 조건식 ? 조건식이 true 일 때 반환할 값 : 조건식이 false 일 때 반환할 값
다른 사람의 풀이
function adder(a, b, s = 0){ for (var i = Math.min(a, b); i <= Math.max(a, b); i++) s += i; return s; }
- Math.min, Math.max 함수를 이용하면 따로 start 값과 stop 값을 지정하지 않아도 되어서 기발하다고 생각했다.
- Math.min(value1, value2 ...), Math.max 처럼 사용.
- 그리고 함수 매개변수 부분에 s 를 선언하여 함수 내부 코드를 줄인 것도 멋있다고 생각했다.