Silaturahim Yukk!!!!!!!

Bergerak Untuk Perubahan…

Arsip untuk Mei 25th, 2007

Pert.11 (Rekursi)

Ditulis oleh desitie di/pada 25 Mei 2007

Rekursi (recursion) adalah proses dari suatu sub program baik fungsi maupun prosedure yang memanggil dirinya sendiri.

Contoh :

Program Rekursi_pascal;
uses Crt;
procedure rekursi(A:integer);
begin

if A < 10 then
begin
write(‘Pascal’);
A:=A+1;
rekursi(A);
end;
end;

var
x:integer;
begin
clrscr;
x:=3; ———> nilai X dapat kita tentukan sendiri
rekursi(x);
readln;

end.

akan menghasilkan :
pasc01.jpg

Contoh faktorial menggunakan rekursi :

Program Faktorial_pascal;
function Faktorial(a:integer):longint;
begin
if (A=1)then
Faktorial:=1
else
Faktorial:=a*faktorial(a-1);
end;
var
x:integer;
begin
writeln(‘Faktorial sequence’);
write(‘Berapa Faktorial :’);readln(x);
writeln(x,’faktorial ‘,’=',faktorial(x));
readln;
end.

Hasil Tampilan :
pasc02.jpg

Contoh untuk indefinite dalam pascal merupakan proses rekursi yang dilakukan tanpa berhenti atau rekursi yang tidak berujung.

Program rekursi_indefinite;
procedure rekursi;
begin
write(‘Pascal’);write;
rekursi;
end;
begin
rekursi;
readln;
end.

Tampilan hasil :
pasc03.jpg

Selamat Mencoba…..

Ditulis dalam pascal | 7 Komentar »