- Source Code
uses crt;
var
I,Jum_Suku,a,b,n:integer;Bil_X:real;
dame:char;
label
awal;
function
fak(n:integer):longint;
begin
if n=0 then fak:=1
else fak:=n*fak(n-1);
end;
function
legendre(X: real; N :integer) : real;
var
Suku_1, Suku_2 :
real;
begin
if N = 0 then
Legendre := 1
else if N = 1 then
Legendre := X
else
begin
Suku_1 := ((2*N -
1) * (X * Legendre(X, N-1))) / N;
Suku_2 := ((N-1) *
Legendre(X, N-2)) / N;
Legendre := Suku_1
+ Suku_2;
end;
end;
function
fibonacci(n:integer):longint;
begin
if (n=1) then fibonacci:=0
else
if (n=2) then fibonacci:=1
else
fibonacci:=fibonacci(n-1)+fibonacci(n-2);
end;
procedure fak;
begin
Writeln('
==Menghitung Nilai Faktorial==');
writeln;
writeln;
write('Masukan nilai factorial : ');
readln(n);
writeln;
writeln(n,'! = ',fak(n));
end;
procedure
Legendre;
begin
Writeln('==Menghitung
Suku Banyak Legendre==');
Writeln;
Write('Sampai suku
ke : ');
Readln(Jum_Suku);
Write('Masukkan
nilai X :');
Readln(Bil_X);
Writeln;
for I := 0 to
Jum_Suku do
begin
Writeln('Suku
ke-',I:2,',',' Nilainya = ',Legendre(Bil_X, I):8:3);
end;
end;
procedure fibo;
begin
writeln('
==Deret Bilangan Fibonacci==');
writeln;writeln;
write('Masukan Jumlah deret bilangan
fibonacci : ');
readln(n);
for a:=1 to n do
begin
write(fibonacci(a),' ');
end;
writeln;
end;
begin
awal:
repeat
clrscr;
writeln('|==========================================|');
writeln('| MENU UTAMA |');
writeln('|==========================================|');
writeln('| 1. Faktorial |');
writeln('| 2. Bilangan Legendre |');
writeln('| 3. Bilangan Fibonacci |');
writeln('| 0. Keluar |');
writeln('|==========================================|');
writeln;
write('Pilih Menu : ');
readln(dame);
case dame of
'1' :
begin
clrscr;
fak;
readkey;
goto awal;
end;
'2' :
begin
clrscr;
legendre;
readkey;
goto awal;
end;
'3' :
begin
clrscr;
fibo;
readkey;
goto awal;
end;
end;
until (dame)='0';
end.
|
- Screenshoot
·
Sekian terima kasih, semoga bermanfaat.
Tidak ada komentar:
Posting Komentar