Program pangkat yang saya maksudkan disini adalah mencari nilai dari bilangan berpangkat n, contoh : nilai dari 2 pangkat 3 adalah 8 dan 3 pangkat 3 adalah 27. ok, langsung saja, ini dia scriptnya :
var a,bilangan,pangkat:integer;
begin
while not eof do begin
read(bilangan);
read(pangkat);
a:=bilangan;
for a:=2 to pangkat do begin
bilangan:=bilangan*a
end;
writeln(bilangan);
end;
end.
2 pangkat 3 = 2 x 2 x 2. Karena dalam mencari nilai bilangan berpangkat membutuhkan perkalian berkali-kali, maka dalam script di atas di sisipkan LOOPING melalui sub-program "for", yaitu pada bagian
for a:=2 to pangkat do begin
bilangan:=bilangan*a
end;
Dalam "for a:=2 to pangkat do begin", nilai "a" sengaja sama dengan 2, agar pada pangkat 1, sub-program "for" tidak di eksekusi, jadi 3 pangkat 1 nilainya tetap 3, BUKAN 9.
Dan variabel "bilangan" sengaja di duplikat ke variabel "a", agar setelah eksekusi pertama nilai variabel "bilangan" asli yang akan di kalikan secara kontinyu nanti tidak akan berubah, akibat eksekusi dari sub-program "for".
Dan setelah semua eksekusi selesai, maka di tulis nilai variabel "bilangan" yang baru, dan terakhir untuk fungsi
while not eof do begin
Bisa dilihat di sini
ok, sekian.
Tidak ada komentar:
Posting Komentar