Soal Algoritma Pascal : Nested For

Diposting oleh Mustaqim on Kamis, 02 Februari 2012

Soal 39 OSN Komputer 2011 Kabupaten:
Perhatikan potongan program berikut:
function adadeh(n:longint);
var i,j,k : longint;
begin
  adadeh:=0;
  for i:=1 to n do
    for j:=1 to n+1 do
      for k:=1 to n+2 do
        adadeh := adadeh+1;
  adadeh := adadeh div 6;
end;
Berapakah nilai n minimal agar adadeh(n) lebih dari 200?
(a) 12
(b) 10
(c) 6
(d) 5
(e) 4
Pembahasan :
Perhatikan baris adadeh := adadeh div 6 berarti :
adadeh div 6 = 200
adadeh = 200x6 = 1200

perhatikan 3 loop dengan indek i,j, dan k. ketiga loop tersebut akan menambah nilai adadeh (nilai awal 0) dengan 1 sebanyak n*(n+1)*(n+2) kali. Jadi nilai n*(n+1)*(n+2) harus lebih dari 1200.

Jika n=6, maka
n*(n+1)*(n+2) = 6*7*8 = 336
Jika n=10, maka
n*(n+1)*(n+2) = 10*11*12 = 1320

Berarti nilai n minimal agar adadeh(n) lebih dari 200 adalah n=10. Jawaban (b)

Artikel terkait :



{ 0 komentar... baca komentar dibawah or tulis komentar }

Posting Komentar