두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
a | b | return |
---|---|---|
3 | 5 | 12 |
3 | 3 | 3 |
5 | 3 | 12 |
function solution(a, b) {
let sum = 0;
for (let i = a; i <= b; i++) {
sum += i;
}
if (a > b) {
for (let j = b; j <= a; j++) {
sum += j;
}
}
return sum;
}
댓글중에 가우스의 재림 ㅜㅜㅋㅋㅋㅋㅋㅋㅋ
수열을 이용할 생각은 못했는데 이래서 수학을 잘 하면 좀 편하다고 하는가보다
양 끝의 합 * 양 끝의 합의 개수
// 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다.
// 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다.
function adder(a, b){
var result = 0
//함수를 완성하세요
return (a+b) * (Math.abs(a-b)+1) / 2;
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( adder(3, 5) )
// 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다.
// 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다.
function adder(a, b, s = 0){
for (var i = Math.min(a, b); i <= Math.max(a, b); i++) s += i;
return s;
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
console.log( adder(3, 5) )