Ĺadny brzuch
Jak obliczyc w pascalu silnie danej liczby?
Jak obliczyc w pascalu silnie danej liczby?
Mozna tez rekurencja :)
function silnia(x: integer): integer; begin if x=1 then result:= 1; result:= silnia(x-1)*x; end;
//edit
Cyrkiel- czepiasz sie :P
Użytkownik Kajetanek edytował ten post 04 listopad 2005, 22:33
Mozna tez rekurencja :)
function silnia(x: integer): integer; begin if x=1 then result:= 1; result:= silnia(x-1)*x; end;
Popraw:function silnia(x:int64):int64; begin if (x=1)or(x=0) then result:=1 else result:=silnia(x-1)*x; end;;)
Użytkownik Cyrkiel edytował ten post 04 listopad 2005, 22:08
Hmm - chyba longint, a nie int64 ;)
Hmm - chyba longint, a nie int64 ;)
W pascalu :> U mnie się nie kompiluje - specjalnie sprawdzałem :]
W pascalu :> U mnie się nie kompiluje - specjalnie sprawdzałem :]
Tak myślałem, że w fp pewnie pójdzie... Tam więcej rzeczy przechodzi, np. większe tablice itd... ;)
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Jak obliczyc w pascalu silnie danej liczby?

Mozna tez rekurencja :)
function silnia(x: integer): integer; begin if x=1 then result:= 1; result:= silnia(x-1)*x; end;
//edit
Cyrkiel- czepiasz sie :P
Użytkownik Kajetanek edytował ten post 04 listopad 2005, 22:33
Mozna tez rekurencja :)
function silnia(x: integer): integer; begin if x=1 then result:= 1; result:= silnia(x-1)*x; end;
Popraw:function silnia(x:int64):int64; begin if (x=1)or(x=0) then result:=1 else result:=silnia(x-1)*x; end;;)
Użytkownik Cyrkiel edytował ten post 04 listopad 2005, 22:08
Hmm - chyba longint, a nie int64 ;)
Hmm - chyba longint, a nie int64 ;)

W pascalu :> U mnie się nie kompiluje - specjalnie sprawdzałem :]
W pascalu :> U mnie się nie kompiluje - specjalnie sprawdzałem :]

Tak myślałem, że w fp pewnie pójdzie... Tam więcej rzeczy przechodzi, np. większe tablice itd... ;)