GRY-Online.pl --> Archiwum Forum

Silnia - złożoność obliczeniowa - pomocy!

24.01.2010
21:45
smile
[1]

s1ntex [ Senator ]

Silnia - złożoność obliczeniowa - pomocy!

Witam, czy moze mi ktos pomoc i napisac mi jak policzyc złożoność obliczeniową silnii?

program silnia_liczby;
var n:integer;

function silnia(n:integer) : integer;
begin
if n=0 then silnia:=1
else silnia := n*silnia(n-1);
end;

begin
writeln('Program oblicza silnie z dowolnej liczby');
write('Podaj liczbe: ');
readln(n);
writeln(n,'! = ',silnia(n));
end.

Mnie juz tu kurwica strzela,
z gory wielkie dzieki!

25.01.2010
18:21
[2]

DEXiu [ Senator ]

Liniowa? (tzn. O(n) a nawet \Theta(n) )
Rekursję ogonową można rozwinąć w zwykłą pętlę. Chyba że potrzebujesz jakichś wyliczeń nie wiadomo skąd i po co :)

25.01.2010
18:26
[3]

Macco™ [ Child Of The Damned ]

Przydałby Ci się też warunek gdy n=1 oraz gdy n<0.

25.01.2010
19:10
[4]

tomazzi [ Flash YD ]

Złożoność liniowa. Warunek będzie sprawdzany n+1 razy.

© 2000-2024 GRY-OnLine S.A.