Tuesday, March 30, 2010

Pengenalan Bahasa Pascal (Pertemuan I)

Pengenalan Bahasa Pascal (Pertemuan I)

Pembahasan 1
Pengenalan Pascal
Sejarah Pascal
Berakar dari Bahasa Algol dan PL/1 pada tahun 60-an di benua Eropa, Pascal disusun oleh Prof.Niklaus Wirth pada tahun 70 dan dipublikasikan tahun 71, Diujicoba pada Komputer CDC 6000 Turbo Pascal bersifat Compiler dan termasuk bahasa tingkat tinggi

II.1. Sejarah singkat Pascal :
- pascal adalah bahasa pemograman tingkat tinggi karena pascal adalah bahasa pemograman yang terstruktur
- Nama pascal diambil dari nama seorang ahli matematika Blaise Pascal
- Pascal dirancang oleh Prof. Niklaus Wirthdari Switzerland
II.2. Memulai Pascal :
Klik 2x icon turbo pascal yg ada di Desktop
A. Membuat direktori :
• File-DOS Shell-Rubah direktori dengan mengetik perintah “cd\..”(Change Dir) sampai tampilan seperti “C:\>”.
• Kalau sudah,pada C:\> ketik “md nama_direktori (cth: md lely_6H).
• Kemudian enter.
• Ketik exit untuk keluar dari DOS
B. Rubah Direktori :
• File-Change Dir-Klik 2x C-cari nama direktori msg2
• Ulangi hal ini setiap kali memulai pascal shg semua latihan disimpan didalam folder msg2.
C. Memulai membuat program baru :
• File-New
• Menyimpan File:
• File-Save-Ketik nama file
• Jelaskan!Struktur Program Pascal :

Struktur Bahasa Pascal
 Judul
Program ;
Uses ;
 Bagian Deklarasi
Label ;
Const ;
Type ;
Var ;
Procedure ;
Function ;
 Bagian Pernyataan
Begin
;
End.
1. Judul Program
2. Blok Program, terdiri dari :
 Bagian Deklarasi : variabel, konstanta, label, tipe, fungsidll
 Bagian Pernyataan : Diawali dg Begin dan diakhiri dg End./isi program
• Compile/Compiling, Proses untuk mengecek kesalahan instruksi program apakah sudah benar/belum. Caranya : Compile-compile/Alt+F9
• Run, Proses untuk mengcompile sekaligus menjalankan program. Caranya : Run-run/Ctrl+F9
• Menampilkan hasil program : ALT+F5
• Membersihkan layar/tampilan : Clrscr (Clear Screen), dengan menggunakan prosedur Uses Crt (Uses Catode Ray Tube).
• Extentation Pascal :.PAS

II.1. Perintah I/O
Memasukkan data/input : Read=Memasukkan data dlm baris yg sama. Readln=Memasukkan data per baris.
Menampilkan hasil/output : Write=Menampilkan output dlm baris yg sama. Writeln=Menampilkan output perbaris.
II.2. Variabel dan Konstanta
Variabel  data yg nilainya berubah-rubah di dalam program.
BU : Var Identifier: tipe data.
Konstanta  data yg nilainya tetap di dalam program.
BU : Const Identifier=nilai.
II.3. Reserved Word/Kata Cadangan
 merupakan kata2 yg telah didefinisikan oleh turbo pascal. Contoh : Program Begin, End, Var, Const dll
Ex : Program perkenalanpascal;
Uses crt;
Begin
Writeln(‘Pertemuan 2’);
Writeln(‘Pascal ’);
Write(‘Pertemuan 2 ’);
Write(‘Pascal ’);
Readln;
End.
Ex : Program perkenalan2;
Uses crt;
Const
Nama=’nama msg2’;
Kelas=’kelas msg2’;
Var
kampus:string;
Begin
Clrscr;
Writeln(‘Lokasi Kampus Anda :’);readln(kampus);
Readln
End.
Latihan !!
Program latihan;
Uses crt;
Const
kampus=’MARGONDA’;
Var
nama : string[20];
kelas : string;
Begin
Clrscr;
Write(‘NAMA :’);readln(nama);
Write(‘KELAS :’);readln(kelas);
Writeln(‘Lokasi Kampus Anda :’,kampus);
Readln
End.
Contoh Program
Listing Programnya
Uses Crt;
Begin
WriteLn( ‘Saya’ );
Write( ‘Belajar’ );
WriteLn( ‘Turbo’ );
Write( ‘Pascal’ );
Write( ‘Versi 7.0’ );
End.
Tekan Ctrl F9 untuk ekseskusi program
Tekan F5 untuk melihat hasilnya
Hasilnya :
Saya
BelajarTurbo
Pascal Versi 7.0
Array Pada Pascal
Posted on 22 Juni 2007 by dif4jc

ARRAY / LARIK
Array (
larik ) adalah tipe terstruktur yang terdiri dari sejumlah komponen yang
mempuyai tipe sama.
B.U :
Array [ 1 . . 20 ] of tipe_data ; (Dimensi 1)
B.U :
Array [1 . . 3 , 1 . . 2] of tipe_data; (Dimensi 2)
Contoh
Program Array :
Uses crt ;
Var

Nama : array [1..30 ] of string ;

Tugas, uts, uas, absen : array [1..30] of integer ;

Rata : array [1..30] of real ;

x , jd : byte;
BEGIN
CLRSCR ;
Write (

Masukan Jumlah data :

) ; readln ( jd ) ;
For x : = 1 to jd do
begin

Writeln (

*****************************

) ;

Writeln (

PENILAIAN UJIAN MAHASISWA BSI

) ;

Writeln (

*****************************

) ;

Write (

Input Nama :

) ; readln (nama[x] ) ;

Write (

Input Nilai Tugas :

) ; readln (tugas[x] ) ;

Write (

Input Nilai Absen :

) ; readln (absen[x] ) ;

Write (

Input Nilai UTS :

) ; readln (uts[x] ) ;

Write (

Input Nilai UAS :

) ; readln (uas[x]) ;


Rata[x]:=(0.1*tugas[x])+(0.2*absen[x])+(0.3*uts[x])+(0.4*uas[x]);

End ;
CLRSCR ;
For i : = 1 to j do
Begin

Writeln (

*****************************

) ;

Writeln (

PENILAIAN UJIAN MAHASISWA BSI

) ;

Writeln (

*****************************

) ;

Writeln (

Nama :

, nama[i] ) ;

Writeln (

Nilai Tugas :

, tugas[i] ) ;

Writeln (

Nilai Absen :

, absen[i] ) ;

Writeln (

Nilai UTS :

, uts[i] ) ;

Writeln (

Nilai UAS :

, uas[i]) ;

Writeln (

****************************

) ;

Writeln (

Rata-rata :

, rata : 1: 0 ) ;

Readln ;
End;
END.
Contoh dari Program Array
program ayam_goreng;
uses crt;
var
i,b:byte;
jenis,kdjenis:array [1..50]of string;
banyak,jmlharga,harga:array [1..50]of real;
totb,ppn,totjml,total:real;
begin
clrscr;
writeln(‘Ayam Goreng Fried Chicken’);
writeln(‘========================’);
writeln(‘Kode Jenis potong Harga’);
writeln(‘=============================’);
writeln(‘D Dada 3000 ‘);
writeln(‘P Paha 2500 ‘);
writeln(‘S Sayap 1500 ‘);
writeln(‘=============================’);
write(‘Masukan Jumlah Jenis : ‘);readln(b);
for i:=1 to b do
begin
writeln;
writeln(‘Jenis Ayam ke- ‘,i);
writeln;
write(‘Jenis Ayam Bagian [D/P/S] : ‘);readln(kdjenis[i]);
write(‘Jumlah Beli / Potong : ‘);readln(banyak[i]);
end;
writeln; clrscr;
writeln(‘ PROGRAM AYAM GORENG FRIED CHICKEN’);
writeln(‘======================================================================’);
writeln(‘NO JENIS POTONG HARGA SATUAN BANYAK BELI
JUMLAH HARGA ‘);
writeln;
totb:=0;
for i:=1 to b do
begin
if kdjenis[i]=’D’ then
begin
jenis[i]:=’Dada’;
harga[i]:=3000;
end
else if kdjenis[i]=’P’ then
begin
jenis[i]:=’Paha’;
harga[i]:=2500;
end
else if kdjenis[i]=’S’ then
begin
jenis[i]:=’Sayap’;
harga[i]:=1500;
end
else
begin
jenis[i]:=’Kepala’;
harga[i]:=1000;
end;
jmlharga[i]:=harga[i]*banyak[i];
totb:=totb+jmlharga[i];
ppn:=totb*0.1;
totjml:=totjml+banyak[i];
total:=totb+ppn
end;
for i:=1 to b do
begin

writeln(i:1,jenis[i]:9,harga[i]:14:0,banyak[i]:18:0,jmlharga[i]:19:0);
end;
writeln(‘=================================================================’);
writeln(‘ Jumlah Potong :
‘,totjml:2:0);
writeln(‘ Jumlah bayar :
‘,totb:2:0);
writeln(‘ PPN 10 % :
‘,ppn:2:0);
writeln(‘ Total bayar :
‘,total:2:0);
readln;
end.
Contoh Array Nilai siswa
uses crt;
var Nilai : array[1..50] of real;
jumlah, rata : real;
i,a, JumDat : byte;
nama : string;
begin
clrscr;
{jumlah:=0;}
writeln(‘ Nilai Rata – Rata Praktikum Kelas
TK2A’);

Writeln(‘—————————————’);
write(‘Nama Mahasiswa =’ );readln(nama);
Write(‘Berapa Jumlah data = ‘);readln(JumDat);
for i := 1 to Jumdat do
begin
Write(‘Nilai Praktiklum ke
‘,i,’=');Readln(Nilai[i]);
end;
jumlah:=0;
for i:= 1 to JumDat do
begin
Jumlah := jumlah + Nilai[i];
rata := Jumlah/JumDat;
end;
writeln;
clrscr;
writeln(‘Nama Mahasiswa =’,nama);
for i := 1 to jumdat do
begin
writeln(‘Nilai Praktekm ke-’,i,’
=’,nilai[i]:3:0);
end;
writeln(‘Total Nilai = ‘, jumlah:8:0);
writeln(‘Nilai Rata – rata = ‘, Rata:8:1);
readln;
end.
Contoh Array
uses crt;
var Nilai : array[1..50] of real;
jumlah, rata : real;
i,a, JumDat : byte;
nama : string;
begin
clrscr;
{jumlah:=0;}
writeln(‘ Nilai Rata – Rata Praktikum Kelas
TK2A’);

Writeln(‘—————————————’);
write(‘Nama Mahasiswa =’ );readln(nama);
Write(‘Berapa Jumlah data = ‘);readln(JumDat);
for i := 1 to Jumdat do
begin
Write(‘Nilai Praktiklum ke
‘,i,’=');Readln(Nilai[i]);
end;
jumlah:=0;
for i:= 1 to JumDat do
begin
Jumlah := jumlah + Nilai[i];
rata := Jumlah/JumDat;
end;
writeln;
clrscr;
writeln(‘ Nilai Rata – Rata Praktikum Kelas
TK2A’);

Writeln(‘—————————————’);
writeln(‘Nama Mahasiswa =’,nama);
writeln(‘ÉÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍ» ‘);
writeln(‘º Praktikum º Nilai º ‘);
writeln(‘ÌÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÍÍ͹ ‘);
for i := 1 to jumdat do
begin
writeln(‘º’,’ ke-’,i,’ º’,
nilai[i]:3:0,’ º’);
end;
writeln(‘ÈÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍͼ’);
writeln(‘Total Nilai = ‘, jumlah:8:0);
writeln(‘Nilai Rata – rata = ‘, Rata:8:1);
readln;
end.
Contoh Array Agen Bus
Program Harga_Tiket;
uses crt;
var np:array[1..50] of string;
jb:array[1..50] of real;
jbyr:array[1..50] of real;
jml,a:byte;
tot:real;
ask:char;
label
baru;
begin
baru:
clrscr;
textcolor(7);
writeln(‘AGEN BUS MALAM “LENGAH TENTREM”‘);
writeln;
write(‘Masukkan Jumlah Penumpang :
‘);readln(jml);
writeln;
for a:=1 to jml do
begin
writeln(‘Data Ke -’,a);
write(‘Nama Penumpang : ‘);readln(np[a]);
write(‘Jumlah Beli : ‘);readln(jb[a]);
end;
clrscr;
writeln(‘DATA PENJUALAN TIKET’);
writeln(‘AGEN BUS MALAM “LENGAH TENTREM”‘);

writeln(‘—————————————————-’);
writeln(‘No. Nama Penumpang Jumlah Beli
Jumlah Pembayaran’);

writeln(‘—————————————————-’);
for a:=1 to jml do
jbyr[a]:=jb[a]*25000;
for a:=1 to jml do

writeln(a:1,np[a]:10,jb[a]:10:0,jbyr[a]:27:3);
begin

writeln(‘—————————————————-’);
tot:=0;
tot:=tot+jbyr[a];
writeln(‘Total
Pembayaran Rp.’,tot:10:3);

writeln(‘—————————————————-’);
writeln;
write(‘Anda Ingin Memasukkan Data
Selanjutnya [Y/T] ? ‘);readln(ask);
if (ask=’Y')or(ask=’y') then goto baru;
end;
end.
Contoh Array data karyawan
uses crt;
var
nama:array[1..10]of string[20];
alamat:array[1..20]of string[30] ;
jml_gaji:array[1..20]of real;
i,j:byte;
begin
clrscr;
write(‘masukan jumlah Data :’);readln(j);
for i:=1 to j do
begin
writeln(‘data ke- ‘,i);
write(‘nama Karyawan :’);readln(nama[i]);
write(‘masukan Alamat :’);readln(alamat[i]);
write(‘jumlah Gaji
:’);readln(jml_gaji[i]);
end;
clrscr;
writeln(‘ DATA GAJI KARYAWAN’);

writeln(‘======================================’);
writeln(‘No. Nama Karyawan Total Gaji ‘);

writeln(‘=======================================’);
for i:=1 to j do
begin
writeln(i:1,nama[i]:15,jml_gaji[i]:15:0);
end;

writeln(‘=======================================’);
readln
end.
Contoh Array Penjualan Susu
Uses crt;
Var i,j:integer;
merk:array[1..5] of string[10];
ukuran:array[1..5] of char;
jumbel,harsat:array[1..5] of integer;
harkot,pot,harsih:array[1..5] of real;
Begin
clrscr;
Write(‘Banyaknya Pembelian : ‘);readln(i);
Writeln;
For j:=1 to i do
Begin
Writeln(‘Data Ke-’,j);
Write(‘Merk Susu : ‘);Readln(merk[j]);
Write(‘Ukuran [K/S/B] :
‘);Readln(ukuran[j]);
Write(‘Jumlah Beli :
‘);Readln(jumbel[j]);
If merk[j]=’Dancow’ then
Case ukuran[j] of
‘K’:harsat[j]:=6500;
‘S’:harsat[j]:=9500;
‘B’:harsat[j]:=13500;
End
Else If merk[j]=’Bendera’ then
Case ukuran[j] of
‘K’:harsat[j]:=8500;
‘S’:harsat[j]:=13500;
‘B’:harsat[j]:=18500;
End
Else
Case ukuran[j] of
‘K’:harsat[j]:=9500;
‘S’:harsat[j]:=16500;
‘B’:harsat[j]:=23500;
End;
If jumbel[j]>=15 then
Begin
harkot[j]:=jumbel[j]*harsat[j];
pot[j]:=0.1*harkot[j];

harsih[j]:=jumbel[j]*harsat[j]-pot[j];
End
Else if jumbel[j]>=30 then
Begin
harkot[j]:=jumbel[j]*harsat[j];
pot[j]:=0.2*harkot[j];

harsih[j]:=jumbel[j]*harsat[j]-pot[j];
End
Else
Begin
harkot[j]:=jumbel[j]*harsat[j];
pot[j]:=0*harkot[j];

harsih[j]:=jumbel[j]*harsat[j]-pot[j];
End;
End;
clrscr;

Gotoxy(1,1);Writeln(‘===========================================================================’);
Gotoxy(2,2);Writeln(‘No’);
Gotoxy(7,2);Writeln(‘Merk’);
Gotoxy(16,2);Writeln(‘Ukuran’);
Gotoxy(24,2);Writeln(‘Jumlah’);
Gotoxy(32,2);Writeln(‘Harga’);
Gotoxy(55,2);Writeln(‘Potongan’);
Gotoxy(70,2);Writeln(‘Total’);
Gotoxy(1,3);Writeln(‘Urut’);
Gotoxy(7,3);Writeln(‘Susu’);
Gotoxy(16,3);Writeln(‘Kaleng’);
Gotoxy(25,3);Writeln(‘Beli’);
Gotoxy(32,3);Writeln(‘Satuan’);
Gotoxy(70,3);Writeln(‘Bayar’);

Gotoxy(1,4);Writeln(‘===========================================================================’);
For j:=1 to i do
Begin
Gotoxy(1,j+4);Writeln(j);
Gotoxy(7,j+4);Writeln(merk[j]);
Gotoxy(18,j+4);Writeln(ukuran[j]);
Gotoxy(26,j+4);Writeln(jumbel[j]);
Gotoxy(32,j+4);Writeln(‘Rp’,harsat[j]);
Gotoxy(55,j+4);Writeln(‘Rp ‘,pot[j]:0:2);
Gotoxy(67,j+4);Writeln(‘Rp ‘,harsih[j]:5:2);
End;

Writeln(‘===========================================================================’);
Readln;
End.
Contoh Array Toko serba ada
uses crt;
var
np:string[20];
jd,i:byte;
nb:array[1..50]of string;
jb,ttl,hrg:array[1..50]of real;
tot:real;
lagi:char;
label awal,akhir;
begin
awal:
clrscr;
writeln(‘TOKO “SERBA ADA”‘);
writeln(‘————————-’);
write(‘masukan nama pembeli :’);readln(np);
write(‘masukan jumlah data :’);readln(jd);
for i:=1 to jd do
begin
writeln(‘data ke- ‘,i);
write(‘nama barang :’);readln(nb[i]);
write(‘jumlah beli :’);readln(jb[i]);
write(‘harga :’);readln(hrg[i]);
end;
clrscr;
writeln(‘ TOKO “SERBA
ADA”‘);
writeln(‘ TABEL PENJUALAN
BARANG’);

writeln(‘———————————————————–’);
writeln(‘No. Nama pembeli Nama barang
Jumlah harga total ‘);

writeln(‘———————————————————–’);
tot:=0;
for i:=1 to jd do
begin
ttl[i]:=hrg[i]*jb[i];
tot:=tot+ttl[i];
end;
for i:=1 to jd do
begin

writeln(i:1,np:10,nb[i]:13,jb[i]:12:0,hrg[i]:8:0,ttl[i]:10:0);
end;

writeln(‘————————————————————-’);
writeln(‘total bayar
= ‘,tot:3:0);

writeln(‘————————————————————-’);
write(‘Mau input data
lagi[Y/T]=’);readln(lagi);
if (lagi=’Y') or (lagi=’y') then
goto awal
else
goto akhir;
akhir:
readln;
end.
Contoh Array Bengkel
program bengkel;
uses crt;
var
i,b:byte;
nm,nmoli,jnsmbl:array [1..50]of string;
hrg,bonus,hrgsev,hrgoli,tot:array [1..50]of
real;
totb:real;
begin
clrscr;
writeln(‘BENGKEL MAJU MUNDUR’);
writeln(‘========================’);
write(‘Masukan data: ‘);readln(b);
for i:=1 to b do
begin
writeln(‘data ke- ‘,i);
writeln;
write(‘nama pengunjung :’);readln(nm[i]);
write(‘jenis kendaraan [1. mobil| 2.
motor]:’);readln(jnsmbl[i]);
write(‘jenis oli [ 1. castrol| 2. pelumas
pertamina]:’);readln(nmoli[i]);
end;
writeln;
writeln(‘ PROGRAM SERVIC BENGKEL
MAJU MUNDUR’);

writeln(‘======================================================================’);
writeln(‘NO NAMA PENGUNJUNG JENIS
KENDARAAN JENIS OLI TOTAL ‘);
writeln;
totb:=0;
for i:=1 to b do
begin
if jnsmbl[i]=’1′ then
hrgsev[i]:=30000
else
hrgsev[i]:=20000;
if nmoli[i]=’2′ then
hrgoli[i]:= 20000
else
hrgoli[i]:=30000;
tot[i]:=hrgsev[i]+hrgoli[i];
totb:=totb+tot[i];
end;
for i:=1 to b do
begin

writeln(i:1,nm[i]:9,hrgsev[i]:14:0,hrgoli[i]:18:0,tot[i]:19:0);
end;

writeln(‘=================================================================’);
writeln(‘total bayar
:’,totb:2:0);
readln;
end.
Contoh Array Kereta
uses crt;
var
jp,i:byte;
np,nk:array[1..50]of string;
fsl:array[1..50]of char;
jml,hrg,ttl:array[1..50]of real;
tot:real;
lagi:char;
label awal,akhir;
begin
awal:
clrscr;
writeln(‘STASIUN “HARUS BERHENTI” ‘);
writeln(‘================================’);
write(‘masukan jumlah pemesan :’);readln(jp);
for i:=1 to jp do
begin
writeln(‘Data ke- ‘,i);
write(‘Nama pemesan :’);readln(np[i]);
write(‘Nama kereta :’);readln(nk[i]);
writeln(‘fasilitas [ 1.VVIP 3.BISNIS ');
write(' 2.VIP 4.EKONOMI ]
=’);readln(fsl[i]);
write(‘jumlah pesan :’);readln(jml[i]);
end;
writeln(‘ STASIUN “HARUS
BERHENTI” ‘);
writeln(‘ PROGRAM PENJUALAN TIKET
KERETA API’);

writeln(‘————————————————————————-’);
writeln(‘NO. Nama Pemesan Nama Kereta
Fasilitas Jumlah Pesan harga total’);
tot:=0;
for i:=1 to jp do
begin
if fsl[i]=’1′ then
hrg[i]:=200000
else
if fsl[i]=’2′ then
hrg[i]:=180000
else
if fsl[i]=’3′ then
hrg[i]:=140000
else
hrg[i]:=80000;
ttl[i]:=hrg[i]*jml[i];
tot:=tot+ttl[i];
end;
for i:=1 to jp do
begin

writeln(i:1,np[i]:10,nk[i]:12,fsl[i]:15,jml[i]:14:0,hrg[i]:12:0,ttl[i]:10:0);
end;
writeln(‘————————————————————————–’);
writeln(‘total pembayaran
=’,tot:9:0);
writeln(‘————————————————————————–’);
write(‘Mau input data lagi[Y/T]=’);readln(lagi);
if (lagi=’Y') or (lagi=’y') then
goto awal
else
goto akhir;
akhir:
readln;

No comments:

Post a Comment

10 Cara Dapatkan Penghasilan Pasif dari Aset Kripto

  Semua pecinta aset kripto nampaknya paham bahwa cara paling umum dalam mendulang cuan di aset kripto adalah dengan   trading . Hanya saja,...