Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penggunaan fungsi rekursif C++ dalam aruhan matematik?

Penggunaan fungsi rekursif C++ dalam aruhan matematik?

王林
王林asal
2024-04-19 22:27:021093semak imbas

Induksi matematik dilaksanakan dalam C++ melalui fungsi rekursif Dengan membuktikan kes asas dan langkah aruhan, adalah mungkin untuk membuktikan bahawa proposisi yang diberikan adalah benar untuk semua nombor asli. Sebagai contoh, kod di atas membuktikan bahawa "semua nombor asli n, n^2 + n + 41 adalah perdana." . P(n) tahan. Ia meneruskan melalui dua langkah berikut:

  • Kes asas: C++ 递归函数在数学归纳法中的应用?Buktikan bahawa P(1) berlaku.

  • Langkah induktif:

    Anggap bahawa P(k) memegang nombor asli tertentu k dan buktikan bahawa P(k+ 1) juga benar.

Fungsi rekursif dalam C++ membolehkan pelaksanaan induksi matematik yang mudah dan ringkas.

Contoh Kod

Pertimbangkan untuk membuktikan proposisi berikut:

Untuk semua nombor asli n, n^2 + n + 41 ialah nombor perdana. n 的某个命题 P(n) 成立。它通过以下两个步骤进行:
  • 基本情况:证明 P(1) 成立。
  • 归纳步骤:假设 P(k) 对于某个自然数 k 成立,并证明 P(k+1) 也成立。

C++ 中的递归函数可以轻松而简洁地实现数学归纳法。

代码示例

考虑证明以下命题:

对所有自然数 nn^2 + n + 41

Kod C++:

#include <iostream>

// 递归函数来检查一个数字是否是素数
bool isPrime(int n) {
    // 基本情况:2 是素数
    if (n <= 2)
        return true;

    // 归纳步骤:假设 n 是素数,检查 n+1
    for (int i = 2; i <= n / 2; i++) {
        if (n % i == 0)
            return false;
    }
    return true;
}

int main() {
    // 对于 1 到 100 的每个数字
    for (int i = 1; i <= 100; i++) {
        // 检查该数字是否满足我们的命题
        if (isPrime(i * i + i + 41))
            std::cout << i << "^2 + " << i << " + 41 is prime." << std::endl;
    }
    return 0;
}

Jalankan output:

1^2 + 1 + 41 is prime.
2^2 + 2 + 41 is prime.
3^2 + 3 + 41 is prime.
4^2 + 4 + 41 is prime.
...

Kesimpulan

Kod ini menunjukkan cara melaksanakan aruhan matematik menggunakan fungsi rekursif dalam C++. Dengan menganggap dua langkah aruhan sebagai rekursi dan kes asas bagi fungsi rekursif, kita boleh membuktikan jenis penyataan matematik tertentu dengan ringkas dan elegan.

Atas ialah kandungan terperinci Penggunaan fungsi rekursif C++ dalam aruhan matematik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn