Perhatikan potongan algoritma berikut.
_____________________________________________
var
a: array [1..8] of integer = (12, 30, 21, 8, 6, 9, 1, 7) ;
procedure zz (i : integer ; j : integer) ;
var tmp : integer ;
begin
tmp : = a [ i ] ; a [ i ] : = a [ j ] ; a [ j ] : = tmp ;
end ;
var
h, k, val : integer ;
begin
val : = a [ 1 ] ;
h : = 1 ;
for k : = 2 to 8 do begin
if (a [ k ] < val) then begin
h : = h + 1 ;
zz (h, k) ;
end ;
end ;
zz (1, h) ;
end.
________________________________________
Pertanyaannya :
- Berapa kalikah zz () dijalankan dalam eksekusi algoritma tersebut ?
- Berapakah isi array a setelah algoritma ini dijalankan ?