Minggu, 04 Desember 2011

TYPE DATA ARRAY / LARIK

 adalah type data lanjutan yang memungkinkan sebuah
   variabel dapat menampung banyak data.
   --> banyak data? : sebutkan misalnya 10, 100 1000 dst...
  
   misal :
   a. terdapat 12 nama bulan dalam satu tahun, yaitu
      bulan ke-1 adalah "Januari"
      bulan ke-2 adalah "februari"
      dst...
      bulan ke-12 adalah "Desember"
      maka mendefinisikan di kamus :
      nama_bln : array of string [1..12]

   b. dalam satu semester, tugas yang dibebankan kepada
      mahasiswa terdapat 10 buah tugas yang mempunyai nilai.
      nil_tgs ke-1 mendapat 70 point
      nil_tgs ke-2 mendapat 80 point
      nil_tgs ke-3 mendapat 75 point
      dst
      nil_tgs ke-10 mendapat 80 point
        maka mendefinisikan di kamus :
       nil_tgs : array of integer [1..10]

Pada Algoritma, data yang akan ditampung pada variabel array
harus didefinisikan no.indeknya...
karena :
   setiap kali kita mendefinisikan variabel Array, maka
   secara otomatis kita memecah variabal tsb menjd banyak bag.
misal :
    X : array of integer [1..5];
    artinya :
         x[1] : integer
         x[2] : integer
         x[3] : integer
         x[4] : integer
         x[5] : integer

    x di-isi dengan 10...?
    x yang mana?

Soal 1:
10 anggota pramuka dari SD "KASIH IBU" sedang mengadakan
acara. ada 2 kegiatan yg harus diikuti oleh semua anggota,
yaitu Mencari Jejak dan Belajar Tali Temali.
untuk menentukan siapa2 saja anggota pramuka yang
mencari jejak atau tali temali, dilihat dari umur mereka
masing2.
bagi yang umurnya diatas rata2 umur semua anggota,
akan diajak mencari jejak dan sisanya belajar tali temali.
Berapa anggota yang diajak mencari jejak dan
berapa anggota yang belajar tali temali?

JUDUL : Pramuka
KAMUS
   umur : array of integer [1..10]
   x    : integer
   jumlah : integer
   rata : float
   jmj : integer
   jbtt : integer
ALGORITMA
   jumlah=0
   for(x=1; x<=10; x=x+1)
      input umur[x]
      jumlah=jumlah+umur[x]

   rata=jumlah/10
  
   jmj=0
   jbtt=0
   for(x=1; x<=10; x=x+1)
      if(umur[x] > rata) then
         jmj=jmj+1
      else
         jbtt=jbtt+1

   output jmj, jbtt

+++) jika soal diatas ditambahi :
     - Berapa dan Siapa saja anggota yang mencari jejak
     - Berapa dan siapa saja anggota yang belajar tali temali

Soal 2:
Untuk mendaftar ujian Skripsi, koordinator mengharuskan
mahasiswa untuk menyerahkan sertifikat TOEFL.
Nama mahasiswa dan Nilai TOEFL akan didata sehingga
Ketua Program Studi dapat mengetahui Berapa Rata2 Nilai TOEFL
mahasiswa, berapa nilai terbesar dan berapa nilai terkecil?

JUDUL : NILAI_TOEFL
KAMUS
    nama_mhs : array of string [1..100]
    nil_toefl : array of integer [1..100
    jawab : character
    x : integer
ALGORITMA
    x=1
    do 
       input nama_mhs[x]
       input nil_toefl[x]
  
       input jawab
       x=x+1 
    while(jawab='y')

    jumlah=0   
    for(z=1; z<x; z=z+1)
       jumlah=jumlah+nil_toefl[z]
      
   
    rata=jumlah/(x-1)

    terkecil=nil_toefl[1]
    for(z=2; z<x; z=z+1)
       if(terkecil>nil_toefl[z])
          terkecil=nil_toefl[z]

    terbesar=nil_toefl[1]
    for(z=2; z<x; z=z+1)
       if(terbesar<nil_toefl[z])
          terbesar=nil_toefl[z]

    output rata, terkecil, terbesar

Tidak ada komentar:

Posting Komentar