Deskripsi Untuk Soal Nomor 32 dan 33
Perhatikan potongan program berikut:
function mangga(rambutan : integer) : integer;
begin
if (rambutan = 1) then mangga := 1 else
if (rambutan mod 2 = 1) then mangga := mangga(3 * rambutan + 1)
else mangga := mangga(rambutan div 2);
end;
function jeruk(anggur, melon : integer) : integer;
begin
if (melon = 1) then jeruk := 0 else
jeruk := mangga(anggur) * anggur + jeruk(anggur, melon - 1);
end;Berapakah hasil pemanggilan fungsi mangga(49)?
A. 1
B. 7
C. 14
D. 21
E. 49
Berapakah hasil pemanggilan fungsi jeruk(25, 20)?
A. 425
B. 450
C. 475
D. 500
E. 525
jadi mangga(49) = 1 (A)
jeruk (25,20) = 1 * 25 + jeruk (25,19) >>> 25
jeruk (25,19) = 1 * 25 + jeruk (25,18) >>> 25
...
...
...
...
...
jeruk (25,1) = 0
Jadi itu diulang sebanyak melon - 1 kali, (19 kali)
(1*25)19
= 19 * 25
= 475 (C)
Penyelesaian : cek pake Pascal.
SMA IT AL BINAA ISLAMIC BOARDING SCHOOL
Masuk untuk menulis jawaban
sek, tolong jelasin yg jeruk dong, gapaham