Sebelum membahas lebih lanjut, ada baiknya kita sedikit mengetahui definisi dari array:
"Definisi Array" menurut sumber wikipedia adalah suatu tipe data terstruktur yang dapat menyimpan banyak data dengan suatu nama yang sama dan menempati tempat di memori yang berurutan serta bertipe data sama pula.
Pengaksesan Array atau larik biasanya dibuat dengan menggunakan perulangan (looping).
Cara Penerapan Fungsi Array Pada Pascal
Berikut contoh kasus Cara Penerapan Fungsi Array Pada Pascal :
Contoh Program Penerapan Array(Program Pembayaran Rekening Listrik)
Diketahui data-data yang akan dipakai adalah sebagai berikut;
- Nomor Rekening
- Nama Pelanggan
- Kelas Pemakaian
- Jenis Pemakaian
- Meteran Bulan Lalu
- Meteran Bulan Terakhir Catat
- Tarif Dasar
- Meteran Terpakai
- Total Biaya Harus Dibayar
Prosedur atau flowchart yang diinginkan adalah ;
Data yang diinput:
- Nomor Rekening
- Nama Pelanggan
- Kelas Pemakaian
- Jenis Pemakaian
- Meteran Bulan Lalu
- Meteran Bulan Terakhir Catat
- Kemudian pertanyaan untuk fungsi looping.
Selanjutnya ;
- Jika Kelas Pemakaian adalah "a" maka Jenis pemakaian adalah " industri dan tarif dasar per KWH adalah 300
- Jika Kelas Pemakaian adalah "b" maka Jenis pemakaian adalah " rt" dan tarif dasar per KWH adalah 200
- Jika Kelas Pemakaian adalah "c" maka Jenis pemakaian adalah " sosial" dan tarif dasar per KWH adalah 100
- Data Meteran terpakai dan total biaya didapat dari hasil proses atau pengolahan Berikut listing program dari contoh kasus tersebut ;
uses crt; var norek :array[1..10] of integer; nama :array[1..10] of string[20]; kd_pakai :array [1..10] of char; j_pakai :string [15]; m_bl :array [1..10] of integer; m_bs :array [1..10] of integer; tarif :real; m_pakai :real; total_b :real; baris,n,i :byte; mad :char; begin clrscr; n:=0; mad:='y'; while mad ='y' do begin clrscr; n:=n+1; GOTOXY (20,5); write (' Entry Data Pelanggan '); GOTOXY (20,6); write ('_____________________________________'); GOTOXY (20,7); write ('Norek ='); readln (norek[n]); GOTOXY (20,8); write ('Nama ='); readln (nama[n]); GOTOXY (20,9); write ('KD_Pakai ='); readln (kd_pakai[n]); GOTOXY (20,10); write ('Meter Bulan Lalu ='); readln (m_bl[n]); GOTOXY (20,11); write ('Meter Bulan Sekarang ='); readln (m_bs[n]); GOTOXY (20,13); write ('_____________________________________'); GOTOXY (20,14); write ('Masih Ada Data (Y/T) ='); readln (mad); GOTOXY (20,15); write ('_____________________________________'); end; begin clrscr; GOTOXY (5,03); write('====================================================================='); GOTOXY (5,04); write('|NO|Norek| Nama |Kode | Jenis | Tarif | MBL | MBS |Meter|Total|'); GOTOXY (5,05); write('| | | |Pakai| Pakai | | | |Pakai|Biaya|'); GOTOXY (5,06); write('====================================================================='); {567890123456780123456789012345678901234567890123456789012345678901234567} {1 2 3 4 5 6 7 } baris:=07; for i:= 1 to n do begin GOTOXY (5,baris); write('| | | | | | | | | | |'); GOTOXY (7,baris); write (i); GOTOXY (9,baris); write (norek[i]); GOTOXY (16,baris); write (nama[i]); GOTOXY (28,baris); write (kd_pakai[i]); if kd_pakai[i]='a' then begin j_pakai:='Industri'; tarif:=300; end else if kd_pakai[i]='b' then begin j_pakai:='rt'; tarif:=200; end else if kd_pakai[i]='c' then begin j_pakai:='sosial'; tarif:=100; end; GOTOXY (33,baris); write (j_pakai); GOTOXY (45,baris); write (tarif:2:0); GOTOXY (51,baris); write (m_bl[i]); GOTOXY (57,baris); write (m_bs[i]); m_pakai:=m_bs[i]-m_bl[i]; GOTOXY(62,baris); writeln(m_pakai:3:0); total_b:=tarif * m_pakai; GOTOXY(69,baris); writeln(total_b:3:0); baris :=baris+1; end; gotoXY(5,baris); write('---------------------------------------------------------------------'); readln; end; end.
No comments:
Post a Comment