Badanie rekurencyjnych ciągów

0

Dobry wieczór koledzy i koleżanki!

Wybaczcie, że Was budzę i piszę tak późno - ale mam zagwostkę. Otóż pracuję nad zadaniami w Pascalu, otrzymałam listę do zrobienia na poniedziałek, i za cholerę nie mogę ZROZUMIEĆ (co dopiero zaimplementować w języku) jednego zadania.

Oto jego treść:

Zdefiniuj ciąg spełniający zależność rekurencyjną:

an = {(an-2)^2 - 1, dla x <= 5
{3an-3 - an-1, dla x > 5

Warunki początkowe zadaj dowolnie

Narysuj drzewko wywołań tej funkcji przy obliczaniu a8.

No i za gwint nie mogę zrozumieć działania. Ustalam sobie a0 = 1 i próbuję sama rekurencyjnie to zrobić na kartce, ale za każdym razem wychodzi coś innego.

Czy ktoś mógłby postarać się i pomóc mi w samym objaśnieniu tego zadania? Z kodem już problemu wtedy nie będę miała!

Geez... dlaczego to programista musi takie pierdoły robić... Od tego są matematycy! Wcale nie dziwię się, że mamy takie kiepskie oprogramowanie, skoro skupiamy się na takim gównie (na uczelniach).

0

Ok, coś zrobiłam:

PROGRAM Okreslto(INPUT, OUTPUT);

USES
	CRT;
	
VAR
	n : INTEGER;
	
	FUNCTION OkreslTo(x : INTEGER) : EXTENDED;
		BEGIN
			IF x = -1 THEN
				OkreslTo := -1
						
			ELSE IF x = 0 THEN
				OkreslTo := 0
						
			ElSE IF x = 1 THEN
				OkreslTo := 1
			
			ELSE IF x <= 5 THEN
				OkreslTo := SQR(OkreslTo(x - 2)) - 1
				
			ELSE
				OkreslTo := (3 * OkreslTo(x - 3)) - OkreslTo(x - 1);
		END;

BEGIN
	CLRSCR;
	
	WRITE('Podaj n: ');
	READLN(n);
	
	WRITELN;
	
	WRITELN('Wynik a', n, ': ', OkreslTo(n):0:0);
	
	REPEAT UNTIL Keypressed;
END.

O to chodzi, co?

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