TI

Pertanyaan

Perhatikan Prosedur coba(n) berikut.

procedure coba(var n: integer);
begin
if n > 0 then begin
n := div 3
write( n mod 3);
coba(n);
end;
end;

Apa yang akan dicetak saat pemanggilan coba (z) dengan z sebelumnya sudah memiliki harga 49?
Pilihan :
a. 0001
b. 1211
c. 0121
d. 1120
e. 1210

Mohon disertai penjelasannya ya. Terima Kasih

1 Jawaban

  • Pemotongan algoritma tersebut n= 49 , bisa ditemukan dan direalisasikan pada tabel berikut :

    *judul tabel kolom 1: Pemanggilan :
    1. coba (49)
    2. coba (16)
    3. coba(5)
    4. coba(1)

    *judul tabel kolom 2 : n=ndiv3
    1. 16
    2. 5
    3. 1
    4. 0

    *judul tabel kolom 3 : write(n mod3)
    1. 1
    2. 2
    3. 1
    4. 0

    *judul tabel kolom 4 : coba (n)
    1. coba(16)
    2. coba(5)
    3. coba(1)
    4. coba(0)

    untuk baris terakhir pada kolom 1 : baris ke 5 = coba 0

    dan kolom 2 3 4 di merge center lalu berisi selesai

    Jadi nanti yang akan tercetak adalah 1210

Pertanyaan Lainnya