Ряды Трибоначчи в C++: методы генерации рядов

Ряд Трибоначчи является расширением ряда Фибоначчи, где каждое число представляет собой сумму трех предыдущих чисел. В C++ ряды Трибоначчи можно генерировать различными методами. Вот несколько возможных реализаций:

Метод 1: использование итерации

#include <iostream>
using namespace std;
void printTribonacci(int n) {
    int tribonacci[n];
    tribonacci[0] = 0;
    tribonacci[1] = 1;
    tribonacci[2] = 1;
    cout << "Tribonacci Series: ";
    cout << tribonacci[0] << " " << tribonacci[1] << " " << tribonacci[2] << " ";
    for (int i = 3; i < n; i++) {
        tribonacci[i] = tribonacci[i - 1] + tribonacci[i - 2] + tribonacci[i - 3];
        cout << tribonacci[i] << " ";
    }
}
int main() {
    int n;
    cout << "Enter the number of terms to generate: ";
    cin >> n;
    printTribonacci(n);
    return 0;
}

Метод 2: использование рекурсии

#include <iostream>
using namespace std;
int tribonacci(int n) {
    if (n == 0)
        return 0;
    else if (n == 1 || n == 2)
        return 1;
    else
        return tribonacci(n - 1) + tribonacci(n - 2) + tribonacci(n - 3);
}
void printTribonacci(int n) {
    cout << "Tribonacci Series: ";
    for (int i = 0; i < n; i++) {
        cout << tribonacci(i) << " ";
    }
}
int main() {
    int n;
    cout << "Enter the number of terms to generate: ";
    cin >> n;
    printTribonacci(n);
    return 0;
}

Метод 3. Использование массива

#include <iostream>
using namespace std;
void printTribonacci(int n) {
    int tribonacci[n];
    tribonacci[0] = 0;
    tribonacci[1] = 1;
    tribonacci[2] = 1;
    for (int i = 3; i < n; i++) {
        tribonacci[i] = tribonacci[i - 1] + tribonacci[i - 2] + tribonacci[i - 3];
    }
    cout << "Tribonacci Series: ";
    for (int i = 0; i < n; i++) {
        cout << tribonacci[i] << " ";
    }
}
int main() {
    int n;
    cout << "Enter the number of terms to generate: ";
    cin >> n;
    printTribonacci(n);
    return 0;
}

Метод 4. Использование динамического программирования

#include <iostream>
using namespace std;
void printTribonacci(int n) {
    int tribonacci[n];
    tribonacci[0] = 0;
    tribonacci[1] = 1;
    tribonacci[2] = 1;
    for (int i = 3; i < n; i++) {
        tribonacci[i] = tribonacci[i - 1] + tribonacci[i - 2] + tribonacci[i - 3];
    }
    cout << "Tribonacci Series: ";
    for (int i = 0; i < n; i++) {
        cout << tribonacci[i] << " ";
    }
}
int main() {
    int n;
    cout << "Enter the number of terms to generate: ";
    cin >> n;
    printTribonacci(n);
    return 0;
}

Это всего лишь несколько методов создания ряда Трибоначчи на C++. Вы можете выбрать метод, который лучше всего соответствует вашим потребностям.