V-logue

[항해99] 프로그래머스 - 두 정수의 합 구하기 본문

항해 99/프로그래머스 Algo

[항해99] 프로그래머스 - 두 정수의 합 구하기

보그 2022. 5. 13. 15:26
function solution(a,b) {
	let answer = 0; 
		for ( let i = Math.min(a,b); i <= Math.max(a,b); i++) {
			answer += i;
		}
		return answer;
}

console.log(solution(3,5))
console.log(solution(1,5))

두 정수의 합 구하기, 

 

처음에 for 문을 

for ( let i = a; i <= b; i++)​

로 구했었는데, a가 최소값이고 b가 최대값일때는 잘 실행되는 모습이었지만, 그 역이 성립하지 않았다.

 

예를들어, console.log(solution(5,3))일 때 a가 최대값이 되어버리기 때문에 에러가 났는데,

 

문제의 제한사항을 보니 'a와 b의 대소관계는 정해져있지 않습니다.'라는 문구가 적혀 있는 것을 보게 됐다.

 

곰곰히 생각해보니 어떤 조건에서도 프로그램이 실행되야 한다는 것을 생각하고, 

 

let i 의 최소값을 설정하다가 찾아보던 중 Math함수에 대해서 알게 됐다.

 

Math.min(a, b, c, ......)은 a,b,c... 중에서 가장 최소값을 찾아내는 함수이고, 

Math.max(이하생략)은 최대값을 찾는 것으로 Math함수를 사용하니 제대로 실행됐다.

 

 

Comments