Ciąg Fibonacciego

Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
Ola00
Rozkręcam się
Rozkręcam się
Posty: 61
Rejestracja: 30 lis 2021, 13:55
Podziękowania: 14 razy

Ciąg Fibonacciego

Post autor: Ola00 »

Ciąg Fibonacciego w Cpp- \(a_1=a_2=1,\ a_{n+2}=a_n+a_{n+1}\)
-gernowanie kolejnych liczb
-Wyznaczenie liczb Finoacciego spełniających określony warunek, np:podzielnuch przez 100,będących liczbami trójkątnymi
Ostatnio zmieniony 13 lis 2022, 18:49 przez Jerry, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości, cała matematyka w kodzie i [tex] [/tex]
uziom
Dopiero zaczynam
Dopiero zaczynam
Posty: 22
Rejestracja: 05 kwie 2023, 09:01
Otrzymane podziękowania: 1 raz
Płeć:

Re: Ciąg Fibonacciego

Post autor: uziom »

Generowanie kolejnych liczb ciągu Fibonacciego w C++:

Kod: Zaznacz cały

#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Podaj ilosc liczb ciagu do wygenerowania: ";
    cin >> n;
    int a = 1, b = 1, c;
    cout << a << " " << b << " ";
    for (int i = 3; i <= n; i++) {
        c = a + b;
        cout << c << " ";
        a = b;
        b = c;
    }
    return 0;
}
Wyznaczanie liczb ciągu Fibonacciego spełniających określony warunek w C++:

Kod: Zaznacz cały

#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Podaj liczbe, przez ktora maja byc podzielne liczby ciagu Fibonacciego: ";
    cin >> n;
    int a = 1, b = 1, c;
    if (a % n == 0) cout << a << " ";
    if (b % n == 0) cout << b << " ";
    for (int i = 3; i <= n; i++) {
        c = a + b;
        if (c % n == 0) cout << c << " ";
        a = b;
        b = c;
    }
    return 0;
}
Wyznaczanie liczb ciągu Fibonacciego, które są liczbami trójkątnymi, w C++:

Kod: Zaznacz cały

#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Podaj ilosc liczb ciagu do wygenerowania: ";
    cin >> n;
    int a = 1, b = 1, c;
    cout << a << " " << b << " ";
    for (int i = 3; i <= n; i++) {
        c = a + b;
        if (8 * c + 1 >= 0 && sqrt(8 * c + 1) == (int)sqrt(8 * c + 1)) {
            cout << c << " ";
        }
        a = b;
        b = c;
    }
    return 0;
}
W tym ostatnim kodzie, sprawdzasz czy wygenerowana liczba jest liczbą trójkątną, korzystając z wzoru analitycznego na sumę n kolejnych liczb naturalnych: T(n) = n * (n + 1) / 2.
ODPOWIEDZ