다양한 기술을 사용하여 JavaScript에서 숫자 합산하기

WBOY
풀어 주다: 2024-07-31 17:19:12
원래의
694명이 탐색했습니다.

Summing Numbers in JavaScript with Different Techniques.

숫자 n이 주어지면 첫 번째 자연수의 합을 구하는 것이 목표입니다. 예를 들어 n이 3인 경우 1 + 2 + 3을 계산하면 6이 됩니다.
1. 수학 공식을 이용합니다.
함수 fun1():

function fun1(n) {
    return n * (n + 1) / 2;
} 
console.log("Ex - 1 >>> ", fun1(3)); // Output: 6

로그인 후 복사

2. 루프를 사용합니다.
함수 fun2():

function fun2(n) {
    let sum = 0;

    for (var i = 0; i <= n; i++) {
        sum = sum + i;
        console.log(i);
    }

    return sum;
}

console.log("Ex - 2 >>> ", fun2(3)); // Output: 6

로그인 후 복사
  • 이 함수는 루프를 사용하여 처음 n개의 자연수를 합산합니다.
  • 변수 합계를 0으로 초기화합니다.
  • 루프는 0부터 n까지 실행됩니다. 각 반복에서 현재 값을 추가합니다. 내가 요약하자면.
  • n = 3인 경우 루프는

  • 으로 실행됩니다.
  • i = 0, 합계 = 0 + 0 = 0

  • i = 1, 합계 = 0 + 1 = 1

  • i = 2, 합 = 1 + 2 = 3

  • i = 3, 합 = 3 + 3 = 6

이 접근 방식은 간단하고 이해하기 쉽지만 수학 공식에 비해 매우 큰 n의 경우 효율성이 떨어질 수 있습니다.

두 가지 방법 모두 동일한 결과를 얻지만 방식이 다릅니다.

  • 수학 공식(fun1)이 더 빠르고 효율적입니다.
  • 루프 방법(fun2)은 간단하고 직관적이지만 시간이 더 오래 걸릴 수 있습니다. 더 큰 n 값의 경우.

3.중첩 루프를 사용한 합산
함수 fun3():

function fun3(n) {
    let sum = 0;

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

    return sum;
}

console.log(fun3(3)); // Output: 10

로그인 후 복사
  • 이 함수는 중첩 루프를 사용하여 합계를 계산합니다.
  • 변수 합계를 0으로 초기화합니다.
  • 외부 루프는 0부터 n까지 실행됩니다.
  • 내부 루프는 0부터 외부 루프의 i의 현재 값까지 실행됩니다.
  • 내부 루프가 반복될 때마다 합계가 1씩 증가합니다.

이것이 어떻게 작동하는지 이해하기 위해 n = 3일 때의 단계를 나누어 보겠습니다.

  1. i = 0일 때:
  • j는 0부터 0까지(1회 반복) 실행되므로 합은 1이 됩니다.
  1. 내가 = 1일 때:
  • j는 0부터 1까지(2회 반복) 실행되므로 합은 3이 됩니다.
  1. 내가 = 2일 때:
  • j는 0부터 2까지(3회 반복) 실행되므로 합은 6이 됩니다.
  1. 내가 = 3일 때:
  • j는 0부터 3까지(4회 반복) 실행되므로 합은 10이 됩니다.

Sum은 다음 단계를 거칩니다.

초기 합계 = 0
i = 0 이후 합계 = 1
i = 1 이후 합 = 3
i = 2 이후 합 = 6
i = 3 이후 합 = 10

따라서 fun3(3)은 수행된 총 증분 횟수인 10을 반환합니다.

위 내용은 다양한 기술을 사용하여 JavaScript에서 숫자 합산하기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!