Problem z zadaniem

0

Mam problem. Ćwiczeniowiec zadał zadanie i muszę go skończyć na jutro :(
Tylko do końca nie rozumiem treści zadania :

program rozwiazujacy tzw rownanie logistyczne, opisujace wspolzaleznosc populacji ryb i ilosci jedzeniapozywienia : X(n+1)=k*X(n) - k*(X(n))^2 <!--to jest cale do potegi drugiej (X(n))--> dodatnia stala "k" powinna byc podana z klawiatury na zadanie programu X_(0) powinno byc z przedzialu (0,1) przedstawia ono procent maksymalnej populacji ryb ktora moze wystapic w jeziorze

a oto mój kod


#include <stdio.h>
#include <stdlib.h>

int main()
{
double i;
const float x = 0.5;
float k;
double rownanie;

    printf("Podaj k ");
    scanf("%f", &k);

    rownanie = (k * x) - (k*x*x);

return 0;
}

Czy dobrze zrozumiałam treść??
0

Zapis X(n+1)=k*X(n) - k*(X_(n))^2 kojarzy mi się z rekurencją (n, n+1...). Tylko wtedy powinno być gdzieś wspomniane ile ma wynosić n.
Jeśli to rekurencja to funkcja by wyglądała tak:

double rekurencja (int n, double k, double x0)
{
    if(n > 0)
        return k*returencja(n-1, k, x0) - k*returencja(n-1, k, x0)*returencja(n-1, k, x0);
    else
        retrurn x0;
}

A cały program:

#include <stdio.h>
#include <stdlib.h>

double rekurencja (int n, double k, double x0)
{
    if(n > 0)
        return k*returencja(n-1, k, x0) - k*returencja(n-1, k, x0)*returencja(n-1, k, x0);
    else
        retrurn x0;
}

int main()
{
double i;
const float x0 = 0.5;
float k;
int n;

    printf("Podaj k ");
    scanf("%f", &k);
    printf("Podaj n: ");
    scanf("%d", &n); //bo nie wiem co zrobić z n więc zakładam, że trzeba je jakoś podać

    printf("X = %f", rekurencja(n, k, x0));

return 0;
}

Przyznaję, że nie mam pojęcia co to równanie logistyczne :D Może to być też szereg (takie coś mi też przez myśl też przeszło) wtedy n oznaczało by dokładność przybliżenia. Może nich się wypowie jeszcze ktoś, kto miał z tym równaniem do czynienia.

Pozdrawiam, Marek Zając

0

A możesz przepisać treść? Bo to co napisałaś to bełkot. Równanie jest rekurencyjne więc musisz też mieć podane X_(0). Poza tym widzisz chyba ze równanie jest zadane rekurencyjnie, tzn nie ma jednego rozwiązania, tylko ma ich wiele, dla kolejnych iteracji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0