Problem z rekurencji


(Ewageo) #1

Mam za zadanie rozwiązac kilka problemów z rekurencji ale mam pewnien problem. Umiem rozwiązywac równania rekurencyjne postaci: T(n)=aT(n/b)+f(n) za pomoca rekurencji uniwer. Ale jak można przekształcić takie równanie rekurencyjne do tej ogólnej postaci:

T(1)=1

T(n)=T(n-3)+n

// Połączono posty.

Z tego co sie dowiedziałem to nie da się przekształcić do tej postaci, ale może ktos wie jak to w takim razie inaczej policzyć:

T(1)=1

T(n)=T(n-3)+n


(Solak Lukas) #2

Zwróć uwagę na komentarz przy deklaracji funkcji rekurencja.

#include 


int rekurencja(int n); /* n musi być równe 3x + 1,

						gdzie x nalezy do liczb naturalnych */


int main()

{


	int n;


	printf("Podaj wartość zmienej n: ");

	scanf("%d", &n);


	printf("\nWynik: %d", rekurencja(n));



	return 0;


}


int rekurencja(int n)

{


	if(n == 1)

	{


		return n;


	}

	else

	{


		return rekurencja(n-3) + n;


	}


}

(Kaka') #3

juveziom0

Rejestrując się na niniejszym forum zobowiązałeś się przestrzegać jego regulaminu. Niestety, w tym momencie łamiesz go nie tytułując poprawnie tematu. Proszę więc zapoznać się w pierwszej kolejności z całym regulaminem forum, a następnie używając przycisku zmien.gif

W przypadku zignorowania prośby temat poleci do śmietnika oraz mogą zostać wyciągnięte surowe konsekwencje.