문제

  • 1부터 n까지의 합을 구한다.
  • n은 항상 0보다 큰 양수이다.

풀이 01

function summation(n) {
  let sum = 0;

  for (let i = 0; i <= n; i++) {
    sum += i;
  }
  return sum;
}

summation(4);    // 10
summation(10);   // 55
summation(100);  // 5050

풀이 02

function summation(n) {
  return (1 + n) * (n / 2);
}

summation(4);    // 10
summation(10);   // 55
summation(100);  // 5050

풀이 03

function summation(n) {
  return ((1 + n) * n) / 2;
}

summation(4);    // 10
summation(10);   // 55
summation(100);  // 5050

풀이 04

function summation(n) {
  if (n <= 1) {
    return 1;
  } else {
    return n + summation(n - 1);
  }
}

summation(4);    // 10
summation(10);   // 55
summation(100);  // 5050