Sabtu, 10 Oktober 2015

QUIS

                                  
      1.            Buatlah contoh kasus array / larik beserta algoritmanya !

Uses Wincrt;
Var A: Array [1..10,1..10] of integer;
i,j,baris,kolom :integer;
Begin
Clrscr;
Write('Masukkan Jumlah Baris : ');Readln(baris);
Write('Masukkan Jumlah Kolom : ');Readln(kolom);
Writeln;
Gotoxy(1,2);Write('A= ');
for i := 1 to baris do
for j := 1 to kolom do
begin
Gotoxy(j*5,i*2+3);
Readln(A[i,j]);
end;
Gotoxy(20,5);Write('AT=');
for i := 1 to kolom do
for j := 1 to baris do
begin
Gotoxy(j*5+20,i*2+3);
Write(A[j,i]);
end;

end.

v  ALGORITMA
                                                      1.            Start / mulai.
                                                      2.            Var A, i, j, baris, dan kolom.
                                                      3.            Input : masukkan jumlah baris dan kolom.
                                                      4.            Print Go to xy untuk bentuk matrik biasa (‘A= ‘) , ß for I := 1 to baris do dan  for j := 1 to kolom do.
                                                      5.            Print Go to xy untuk matrik biasa A ß(j*5, i * 2+3)
                                                      6.            Print Go to xy untuk (‘AT = ‘) ß for I := 1 to baris do dan  for j := 1 to kolom do.
                                                      7.            Print Go to xy untuk matrik AT ß (j*5 + 20, i*2+3);
                                                      8.            End / selesai.

      2.            Buatlah contoh kasus record beserta algoritmanya !
program contoh_record;
uses wincrt;
type pegawai = record
Nama                 : string[20];
Alamat               : string[20];
Agama                : string[8];
Jenis_Kelamin        : string[12];
Nip                  : string[25];
Golongan             : string[10];
Jabatan              : string[10];
end;
var recPgw           : pegawai;
Begin
     writeln('^_^ DATA KEPEGAWAIAN ^_^');
     writeln;
     writeln('========================');
     write(' Nama                      : '); readln(recPgw.nama);
     write(' Alamat                    : '); readln(recPgw.alamat);
     write(' Agama                     : '); readln(recPgw.agama);
     write(' Jenis_Kelamin             : '); readln(recPgw.jenis_kelamin);
     write(' Nip                       : '); readln(recPgw.nip);
     write(' Golongan                  : '); readln(recPgw.golongan);
     write(' Jabatan                   : '); readln(recPgw.jabatan);

     clrscr;
     writeln('^_^ DATA KEPEGAWAIAN YANG ANDA INPUTKAN ^_^');
     writeln('===========================================');
     writeln(' Nama                      : ', recPgw.nama);
     writeln(' Alamat                    : ', recPgw.alamat);
     writeln(' Agama                     : ', recPgw.agama);
     writeln(' Jenis_Kelamin             : ', recPgw.jenis_kelamin);
     writeln(' Nip                       : ', recPgw.nip);
     writeln(' Golongan                  : ', recPgw.golongan);
     writeln(' Jabatan                   : ', recPgw.jabatan);

     readln;
end.

ALGORITMA
a.                  Mulai/star
b.                 Type type pegawai = record
Nama , Alamat, Agama, Jenis_Kelamin, Nip, Golongan, Jabatan : string.
c.                  Var nama,alamat,agama,jenis kelamin,nip,golongan,jabatan
d.                 Input:  nama, alamat, agama, jenis kelamin, nip, golongan, jabatan
e.                  Print / Cetak  nama, alamat agama, jenis kelamin, nip, golongan, jabatan
f.                  Selesai.


      3.            Buatlah sebuah program penggabungan array dan record beserta algoritmanya !

Program contoh_record_array;
uses wincrt;
type tb_brg=record
kb:string;
nb:string;
hb:string;
end;
var
brg:array[1..10] of tb_brg;
a,b,ke:integer;
tukar:tb_brg;
pilih:char;
posisi:array[1..10] of integer;

begin
pilih:='y';
while ((pilih='y') or (pilih='Y')) do
begin
ke:=ke+1;
writeln;
writeln('  Masukan Jenis Barang ke ',ke,' :   ');
writeln('===============================');
write('Masukan Kode Barang  : ');readln(brg[ke].kb);
write('Masukan Nama Barang  : ');readln(brg[ke].nb);
write('Masukan Harga Barang : ');readln(brg[ke].hb);
writeln('===============================');
write('Tambah Barang yang Lain ? y/t: ');readln(pilih);
end;
     clrscr;
     for a:=1 to ke do
     begin
     writeln;
     writeln('               Tabel Barang                 ');
     writeln('--------------------------------------------');
     writeln('no    |   Kode   |   Barang   |    Harga   |');
     writeln('========================================');
     for a:=1 to ke do
     writeln(a:6,'|',brg[a].kb:10,'|',brg[a].nb:12,'|',brg[a].hb:12,'|');
     writeln('--------------------------------------------');
     writeln;

     end;
     end.

v  ALGORITMA

a.       Mulai/start
b.      type tb_brg=record, kb, nb,hb:string;
c.       var barang,a,b,ke,tukar,pilih,posisi.
d.      input masukkan kode,nama barang, harga barang,pilih
e.       Print / cetak kode,nama barang, harga barang (ke :=ke +1).
f.       for a:=1 to ke do
g.      Print pemilihan ß pilih= ‘y’ atau pilih =’t’
h.      End / selesai.

      4.            Jelaskan materi array dan record.
v  ARRAY

Array adalah suatu alokasi beberapa tempat di memori yang tersimpan secara berurutan yang digunakan untuk menyimpan beberapa nilai dengan tipe data yang homogen. Ukuran atau jumlah elemen maksimum array telah diketahui dari awal yaitu ketika array dibuat. Sekali ukuran array ditentukan maka tidak dapat diubah. Ukuran array adalah bilangan bulat positif. Array harus diberi nama sebagai identifikasi. Cara mengaksesnya adalah dengan menyebutkan nama array dan indeksnya. Indeks array dimulai dari 0 sampai dengan n-1 (n adalah ukuran array).
Operasi terhadap elemen array dilakukan dengan pengaksesan langsung. Artinya nilai di masing-masing posisi elemen dapat diambil dan nilai dapat disimpan tanpa melewati posisi posisi lain. Dua operasi paling dasar terhadap satu elemen array adalah penyimpanan nilai elemen ke posisi tertentu di array dan pengambilan nilai elemen dari posisi tertentu di array. Biasanya bahasa pemrograman menyediakan sintaks tertentu untuk penyimpanan dan pengambilan nilai elemen pada posisi tertentu di array. Contohnya
· NilaiMhs[7] =80, berarti menyimpan nilai 80 ke posisi ke-7 dari array NilaiMhs.
· Nama = Mahasiswa[20], berarti mengambil nilai elemen posisi ke-20 dari array Mahasiswa dan menyimpan nilai tersebut ke variabel yang bernama “Nama”.

Keunggulan array adalah sebagai berikut :
      1.            Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat diacu secara langsung tanpa melalui elemen-elemen lain.
      2.            Jika telah berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemen elemen tetangga, baik elemen pendahulu atau elemen penerus.

Kelemahan array adalah sebagai berikut :

      1.            Array mempunyai fleksibilitas rendah, karena array mempunyai batasan harus bertipe homogen. Kita tidak dapat mempunyai array dimana satu elemen adalah karakter, elemen lain bilangan, dan elemen lain adalah tipe-tipe lain.
      2.            Kebanyakan bahasa pemrograman mengimplementasikan array dengan ukuran statik yang sulit diubah ukurannya di waktu eksekusi. Bila penambahan dan pengurangan terjadi terus-menerus, maka representasi statis ini bersifat tidak efisien dalam penggunaan memori.

v  RECORD
Tipe data record merupakan tipe data terstruktur. Dalam penggunakan tipe data record dapat dikumpulkan beberapa item data yang masing- masing mempunyai tipe data berbeda- beda. Record dapat berisi beberapa field untuk sebuah subyek tertentu.           




Tidak ada komentar:

Posting Komentar