Jumat, 13 Maret 2015

ALGORITMA PEMROGRAMAN 2 (PROGRAM ARRAY DAN RECOR)

  1. Pengertian array dan record

  •  Array
          Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu: variabel).Cara Pendefinisian
• contoh type
A = array [1..6] of integer;
• Secara logika pendefinisian array di atas merupakan sekumpulan kotak , dimana tiap kotak mempunyai nilai indeks integer 1, 2, 3, ...,6 tiap elemen array ditandai dengan:
A[1], A[2], A[3], A[4], A[5], A[6]
untuk mengisi elemen array misal A[1]:=4;.Sifat Array Array merupakan struktur data yang statis, yaitu jumlah elemen yang ada harus ditentukan terlebih dahulu dan tak bisa di ubah saat program berjalan.

  • Record
         Record adalah sebuah tipe data yang mengumpulkan beberapa item data di mana masing-masing tipe data dari item data ini berbeda-beda. Masing-masing item data ini bisa disebut dengan field. 
  • Mendeklarasikan Record
           Masih ingat kuliah mengenai tipe data? Dalam Pascal, semua variabel harus dideklarasikan sebelum bisa dipakai. Sebagai contoh, kitaingin memakai variabel dengan nama Nama untuk dimasukkan nilai nama-nama mahasiswa. Kita akan mendefinisikannya menjadi:var Nama: String[80]; Dari kode di atas kita memberitahukan ke Pascal bahwa kita akan memakai variabel Nama yang tipe datanya string dan kita alokasikan panjang stringnya 80 karakter.
 Nah, dalam Pascal, kita dimungkinkan untuk memiliki judul tipe data yang kita definisikan sendiri. Misalkan kita ingin mengganti judul tipe data integer dengan bilanganBulat. Dalam Pascal, kita definisikan ini dengan:
 type bilanganBulat = integer;
Perhatikan beda pendefinisian variabel dan pendefinisian type. Untuk pendefinisian variabel kita menggunakan titik dua (:), sedangkan pendefinisian type kita menggunakan sama dengan (=).  Untuk mendeklarasikan record, kita memakai reserved word record, diikuti dengan daftar field dan diakhiri dengan end. Berikut adalah contoh dari deklarasi sebuah record.
type recMhs = record;
  nama : string[80];
  NPM : string[8];
  nilai : integer;
  end;
 
  2. Contoh Program
 

       Program ini adalah program biodata mahasiswa berkut sytaks dan screenshoot programnya :



 Program Biodata_Mahasiswa;
 uses crt;
 Type Rec  = Record
      Nama : String;
      NIM  : String;
      tl   : string;
      Umur : Longint;
 end;
 var Data  : array[1..50] of Rec;
     n,i   : integer;
     pilih  : string;

 Procedure Input;
 Begin
  clrscr;
  n:=0;
  repeat
  clrscr;
  inc(n);
  writeln('|===================================|');
  writeln('|         BIODATA MAHASISWA         |');
  writeln('|===================================|');
  writeln('| Data ke-',n,'                     |');
  writeln('|===================================|');
  with Data[n] do
  begin
  writeln('|===================================|');
  writeln('| Nama          :                   |');
  writeln('| NIM           :                   |');
  writeln('| Tanggal Lahir :                   |');
  writeln('| Umur          :           Tahun   |');
  writeln('|===================================|');
  gotoxy(19,7);readln(Nama);
  gotoxy(19,8);readln(NIM);
  gotoxy(19,9);readln(tl);
  gotoxy(19,10);readln(Umur);
  end;
  writeln;
  write('Input Data Lagi? [Y/N] : ');readln(Pilih);
  Until ((Pilih='n') or (Pilih='N'));
 end;



 Procedure Output;
 Begin
 clrscr;
 writeln('|==================================================================|');
 writeln('|                           BIODATA MAHASISWA                      |');
 writeln('|================================================|=================|');
 writeln('|          Nama         |    NIM    |    Umur    |  Tanggal Lahir  |');
 writeln('|=======================|===========|============|=================|');

 for i:=1 to n do
  begin
  writeln('|                       |           |            |                 |');
   with Data[i] do
    begin
     gotoxy(3,5+i);writeln(Nama);
     gotoxy(27,5+i);writeln(NIM);
     gotoxy(43,5+i);writeln(Umur);
     gotoxy(52,5+i);writeln(tl);
    end;
  end;
  writeln('|==================================================================|');
 readkey;
end;

Begin
repeat
clrscr;
  writeln('|======================|');
  writeln('|      Menu Utama      |');
  writeln('|  1. Masukkan Data    |');
  writeln('|  2. Lihat Data       |');
  writeln('|  3. Keluar           |');
  writeln('|======================|');
  writeln('|                      |');
  writeln('| Masukkan Pilihan :   |');
  writeln('|======================|');
  gotoxy(22,8);readln(Pilih);
  case Pilih of
  '1' : Input;
  '2' : Output;
  '3' : Exit;
  else write('Input slah, input ulang!');
  end;
Until (Pilih)='3';
end.











 

 
Sekian Terima Kasih, mohon ma'af jika ada kekhilafan. Semoga bermanfaat. :) =)) 

    2 komentar: