Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ หาผลรวมจำนวนธรรมชาติ (Natural Numbers) ด้วย Recursion


จำนวนธรรมชาติคือจำนวนเต็มบวกเริ่มจาก 1: 1, 2, 3, 4, 5...

ตัวอย่างโค้ด

#include <iostream>
using namespace std;

int sum(int n) {
    if(n == 0)
        return n;
    else
        return n + sum(n-1);
}

int main() {
    int n = 10;
    cout << "Sum of first " << n << " natural numbers is " << sum(n);
    return 0;
}

ผลลัพธ์

Sum of first 10 natural numbers is 55

อธิบายการทำงาน

sum() แบบ Recursive:

int sum(int n) {
    if(n == 0)
        return n;
    else
        return n + sum(n-1);
}
  • n == 0 → คืน 0 (ผลรวม 0 ตัวแรก = 0)
  • n > 0 → คืน n + sum(n-1) เรียกซ้ำจนถึง 0
  • ผลรวม = n + (n-1) + ... + 2 + 1

main() แสดงผล sum(10) = 55