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