Pascal, pasti keluar saat UTS nanti... mari kita bahas lagi tentang "PASCAL"
Dimana ada sebuah cerita atau output yang diharapkan untuk kita, kemudian menerjemahkan dalam bentuk pascal. untuk lebih jelasnya, pahami statement-statement yang ada di catatan teman-teman atau bisa di lihat di blog ini.
Misalkan sebuah soal, dengan output yang diharapkan sesuai dengan gambar di bawah ini :
SOAL :
klik pada gambar untuk memperbesar |
Terjemahkan atau buatlah sebuah skrip pascal untuk menghasilkan program seperti di atas...!
JAWAB :
PROGRAM GAJI;
USES CRT;
VAR NIP : INTEGER;
NAMA : STRING [20];
ALAMAT : STRING [30];
JABATAN : INTEGER;
GOLONGAN : STRING;
GATOT : REAL;
YN : CHAR;
BEGIN
REPEAT;
CLRSCR;
TEXTCOLOR (15);
GOTOXY (10,4); WRITELN ('GAJI PEGAWAI');
GOTOXY (4,6); WRITELN ('------------------------------------');
GOTOXY (4,8); WRITE ('Masukkan NIP :'); READLN (NIP);
GOTOXY (4,10); WRITE ('Masukkan Nama :'); READLN (NAMA);
GOTOXY (4,12); WRITE ('Masukkan Alamat :'); READLN (ALAMAT);
GOTOXY (4,14); WRITE ('Masukkan Kode Jabatan :'); READLN (JABATAN);
IF JABATAN = 1 THEN
BEGIN
GOTOXY (4,15); TEXTCOLOR (4); WRITELN ('Jabatan Anda : Direktur');
END;
IF JABATAN = 2 THEN
BEGIN
GOTOXY (4,15); TEXTCOLOR (4); WRITELN ('Jabatan Anda : Wakil Direktur');
END;
IF JABATAN = 3 THEN
BEGIN
GOTOXY (4,15); TEXTCOLOR (4); WRITELN ('Jabatan Anda : Staff');
END;
TEXTCOLOR (15);
GOTOXY (4,17); WRITE ('Masukkan Kode Golongan :'); READLN (GOLONGAN);
IF (GOLONGAN = 'A') OR (GOLONGAN = 'a') THEN
BEGIN
TEXTCOLOR (3);
GOTOXY (4,18); WRITELN ('Golongan : A');
GOTOXY (4,19); WRITELN ('Gaji Pokok Anda Sebesar : Rp. 1500000.00');
GOTOXY (4,20); WRITELN ('Tunjangan Anda Sebesar : Rp. 5000000.00');
GATOT := 1500000 + 5000000;
TEXTCOLOR (15);
GOTOXY (4,22); WRITELN ('Total Gaji Anda Sebesar : Rp. ', GATOT:8:2);
END;
IF (GOLONGAN = 'B') or (GOLONGAN = 'b') THEN
BEGIN
TEXTCOLOR (3);
GOTOXY (4,18); WRITELN ('Golongan : B');
GOTOXY (4,19); WRITELN ('Gaji Pokok Anda Sebesar : Rp. 2000000.00');
GOTOXY (4,20); WRITELN ('Tunjangan Anda Sebesar : Rp. 1000000.00');
GATOT := 2000000 + 1000000;
TEXTCOLOR (15);
GOTOXY (4,22); WRITELN ('Total Gaji Anda Sebesar : Rp. ', GATOT:8:2);
END;
IF (GOLONGAN = 'C') or (GOLONGAN = 'c') THEN
BEGIN
TEXTCOLOR (3);
GOTOXY (4,18); WRITELN ('Golongan : C');
GOTOXY (4,19); WRITELN ('Gaji Pokok Anda Sebesar : Rp. 3000000.00');
GOTOXY (4,20); WRITELN ('Tunjangan Anda Sebesar : Rp. 2000000.00');
GATOT := 3000000 + 2000000;
TEXTCOLOR (15);
GOTOXY (4,22); WRITELN ('Total Gaji Anda Sebesar : Rp. ', GATOT:8:2);
END;
GOTOXY (4,24); WRITE ('Isikan Data Baru ? [Y/N] :'); READLN (YN);
UNTIL ( YN='N' ) OR ( YN='n');
END.
Yang perlu diingat di sini adalah,
VAR NIP : INTEGER;
NAMA : STRING [20];
ALAMAT : STRING [30];
JABATAN : INTEGER;
GOLONGAN : STRING;
GATOT : REAL;
YN : CHAR;
-
Integer digunakan jika data yang akan dimasukkan berupa numeric atau angka.
- String digunakan jika data yang dimasukkan berupa karakter, huruf, dan angka.
- String [20] artinya data yang dimasukkan tidak boleh melebehi 20 karakter.
- Real biasanya digunakan untuk data yang menampilkan hasil desimal.
- Char biasanya digunakan untuk data yang dimasukkan hanya 1 karakter saja, sama dengan Byte.
Penggunaan
REPEAT;
blablabla
blablabla
UNTIL ( YN='N' ) OR ( YN='n');
Mengulang
blablabla
blablabla
Hingga data yang dimasukkan dalam variable YN adalah N atau n,
Artinya
data akan mengulang terus menerus sampai variable YN bertuliskan N atau n.
tentang penggunaan IF, THEN, dan OR, pasti logika ini semua anak subah bisa.
sekian dulu dari Admin...
jika ada kesulitan dari teman-teman, boleh lah tanya saya.. haahaa,,,
Terima Kasih