Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program...

112
1. Sejarah PASCAL Merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrograman untuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untuk mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan anggota grup yang membuat ALGOL. Tahun 1971, dia menerbitkan suatu spesifikasi untuk highly- structured language (bahasa tinggi yang terstruktur) yang menyerupai ALGOL. Dia menamainya dengan PASCAL (seorang filsuf dan ahli matematika dari Perancis) Pascal bersifat data oriented, yaitu programmer diberi keleluasaan untuk mendefinisikan data sendiri. Pascal juga merupakan teaching language (banyak dipakai untuk pengajaran tentang konsep pemrograman). Kelebihan yang lain adalah penulisan kode Pascal yang luwes, tidak seperti misalnya FORTRAN, yang memerlukan programmer untuk menulis kode dengan format tertentu. Bentuk dasar program Pascal adalah seperti berikut: program TITLE ; begin pernyataan; pernyataan end. 2. PASCAL sebagai bahasa terstruktur

Transcript of Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program...

Page 1: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

1. Sejarah PASCAL

Merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrograman

untuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untuk

mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth

dari Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan

anggota grup yang membuat ALGOL. Tahun 1971, dia menerbitkan suatu

spesifikasi untuk highly-structured language (bahasa tinggi yang

terstruktur) yang menyerupai ALGOL. Dia menamainya dengan PASCAL

(seorang filsuf dan ahli matematika dari Perancis) Pascal bersifat data

oriented, yaitu programmer diberi keleluasaan untuk mendefinisikan data

sendiri. Pascal juga merupakan teaching language (banyak dipakai untuk

pengajaran tentang konsep pemrograman). Kelebihan yang lain adalah

penulisan kode Pascal yang luwes, tidak seperti misalnya FORTRAN, yang

memerlukan programmer untuk menulis kode dengan format tertentu.

Bentuk dasar program Pascal adalah seperti berikut:

program TITLE ; begin pernyataan; pernyataan end.

2. PASCAL sebagai bahasa terstruktur

Sebagai bahasa terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut:

1. Berurutan Susunan dari kode-kode dalam teks Pascal harus ditulis

secara urut dari atas, pernyataan-pernyataan yang ditulis lebih awal akan

dieksekusi lebih dahulu. Oleh karena itu, suatu pernyataan yang

menyangkut suatu variabel di dalam program, maka variable itu harus

terdefinisi dahulu sebelumnya. Hal ini terutama menyangkut pada

Page 2: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

pemanggilan sub-program oleh sub-program yang lain. Bisa dibaca lebih

lanjut pada bagian sub-program.

Page 3: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

2. Blok dengan batas-batas yang jelas. Pascal memberikan

pembatas yang jelas pada tiap-tiap blok, seperti pada blok program utama,

sub-program, struktur kontrol (pengulangan/ pemilihan), dll. Pemakaian

kata kunci begin untuk mengawali operasi pada blok dan end untuk

menutupnya memudahkan programmer menyusun programnya dengan

mudah.

Seperti contoh:

If X>0 then begin Write ( ‘ bilangan positif’); Writeln ( ‘ program selesai’);

end;

3. Satu pintu masuk dan satu pintu keluar pada blok pemilihan dan

pengulangan. Contoh di atas juga mengilustrasikan pintu masuk tunggal

pada suatu blok pemilihan yaitu suatu test logika X>0, dengan pintu

keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah

output tapi suatu paket perintah yang dirangkai dengan begin .. end.

3. Bakuan PASCAL

Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa

versi, diantaranya: USCD PASCAL, MS PASCAL, TURBO PASCAL dll.

Dengan semakin berkembangnya teknologi dalam komputasi, Pascal

dimanfaatkan untuk pengembangan DELPHI (berasal dari nama suatu kota

di masa Yunani kuno), suatu bahasa pemrograman visual yang

menonjolkan pada efek grafis dan orientasi pada objek-objek yang siap

dipakai, karena memiliki Visual Component Library (VCL).

4. Struktur Bahasa PASCAL secara umum

Page 4: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pascal mempunyai struktur sebagai berikut:

1. Bagian Judul Program

2. Bagian Deklarasi

a. Deklarasi tipe data (TYPE) b. Deklarasi variabel (VAR) c. Deklarasi

konstanta (CONST) d. Deklarasi label (LABEL) e. Deklarasi sub-

program (PROCEDURE dan FUNCTION)

3. Bagian Program Utama Perintah-perintah.

Teks Pascal setidaknya memiliki bagian Judul Program, bagian Deklarasi,

dan Bagian Program Utama yang berupa perintah-perintah. Sedangkan

untuk bagian deklarasi menyesuaikan dengan isi dari program itu sendiri.

Contoh program PASCAL:

program TAMBAH_00; { Menjumlahkan dua bilangan yang nilainya

diberikan dalam perintah} var X, Y, Z: integer; { Deklarasi variabel X,Y dan

Z sebagai bilangan bulat } BEGIN { Program Utama Mulai } X := 50;

{ Perintah memberikan nilai 50 pada var. X } Y := 25; { Perintah

memberikan nilai 25 pada var. Y } Z := X + Y; { Perintah menjumlahkan X

dan Y serta menyimpan hasilnya ke Z} END. { Akhir Program Utama }

Pada contoh ini nilai X dan Y tidak bisa sembarang,

Pascal merupan salah satu program yang terkemuka karena struktur penulisannya yang mengalir seperti algoritma, saat ini kita akan mempelajari perbedaan antara case dan if pada pascal 1.5 (TPW 1.5). sebelum itu perhatikan keterangan berikut ini struktur dasarnya.

Page 5: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Program namaprogram; ? judul programVar jenis : variable; ? jenis variabelBegin ; ? memulai programClrscr ? membersihkan layar (boleh digunakan dan tidak)Isi ? isi programEnd. ? akhir program

KeteranganWrite ? menapilkan tulisanWriteln ? menapilkan tulisan pada garis baruRead ? menginput dataReadln ? manginput data pada garis baruVar ? variable

CASE

program case1;uses wincrt;var nip,nama : string;pendapatan,pajak : real;gol : char;beginclrscr;writeln(‘——— DAFTAR PAJAK ———-’);writeln(‘_________________________________’);write (‘NIP : ‘);readln(nip);write (‘Nama Karyawan : ‘);readln(nama);write (‘Golongan [A,B,C] : ‘);readln(gol);

Page 6: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write (‘Pendapatan : ‘);readln(pendapatan);case upcase(gol) of‘A’ : beginwriteln(‘Golongan ini bebas pajak’);pajak := 0;end;‘B’ : pajak := 0.1 * pendapatan;‘C’ : pajak := 0.2 * pendapatan;else write(‘Salah melakukan Penginputan data ‘);end;writeln(‘Pajak : Rp. ‘,pajak:9:2);end.

Tampilan saat case Di running

Sedangkan untuk program IF

program if1;uses wincrt;var nip,nama : string;pendapatan,pajak : real;gol : char;beginclrscr;writeln(‘——— DAFTAR PAJAK ———-’);writeln(‘_________________________________’);write (‘NIP : ‘);readln(nip);write (‘Nama Karyawan : ‘);readln(nama);

Page 7: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write (‘Golongan [A,B,C] : ‘);readln(gol);write (‘Pendapatan : ‘);readln(pendapatan);if (gol = ‘A’ )or (gol = ‘a’) thenpajak := 0else if (gol = ‘B’) or (gol = ‘b’) thenpajak := 0.1 * pendapatanelse if (gol = ‘C’) or (gol = ‘c’) thenpajak := 0.2 * pendapatanelse write(‘Salah melakukan Penginputan data ‘);writeln(‘Pajak : Rp. ‘,pajak:9:2);end.

Pascal adalah sebuah bahasa pemograman tempo dulu. Mungkin itu saja yang

dapat saya definiskan, karena saya yakin pembaca lebih tahu mengenai definisi

lengkap dari Pascal. Saya ingin berbagi ilmu walaupun cuma sedikit tentang

pemograman dengan Pascal. Melalui tulisan ini, saya mencoba untuk mengulas

program, prosedur dan fungsi menarik yang bisa Anda coba dan terapkan dalam

pemograman Pascal. Beberapa yang dapat saya sampaikan, diantaranya:

1. Fungsi-fungsi String

2. Fungsi-fungsi Date

3. Fungsi-fungsi Konversi

4. Program Permainan

Program pascal tidak mengenal aturan penulisan di kolom tertentu, jadi

boleh ditulis mulai kolom berapapun. Penulisan statement-statement pada contoh

Page 8: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh

diproses, hanya dimaksudkan supaya mempermudah pembacaan program,

sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi.

Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis

dapat digunakan untuk memberi nama program dan daftar dari parameter tentang

komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi

saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri

dengan titik koma.

Contoh :

Program contoh ; 

Begin

Writeln ( ‘Gunadarma’ ); 

Writeln( ‘---------------‘ ); 

End .

1.3 Deklarasi 

Bagian deklarasi digunakan bila didalam program menggunakan pengenal

(identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan fungsi.

1.3.1 Deklarasi Konstanta 

Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan

identifier yang diberi suatu nilai konstanta. Data konstanta nilainya sudah

ditentukan dan pasti, tidak dapat dirubah didalam program.

Contoh :

Program contoh_konstanta; 

Const

Page 9: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Potongan = 0.2 ; 

Gaji = 25000 ; 

Namaperusahaan = ‘PT ABC’ ; 

Begin

Writeln ( ‘Potongan =’, Potongan ) ; 

Writeln ( ‘Gaji =’, Gaji ) ; 

Writeln ( ‘Nama =’, Namaperusahaan) ; 

End .

1.3.2 Deklarasi Variabel 

Variabel adalah identifier yang berisi data yang dapat diubah-ubah nilainya

didalam program. Menggunakan kata cadangan Var sebagai judul didalam bagian

deklarasi variable dan diikuti oleh satu atau lebih identifier yang dipisahkan koma,

diikuti dengan titik dua dan tipe dari datanya diakhiri dengan titik koma.

Contoh :

Var

Total, Gaji, Tunjangan : real ; 

Jumlahanak : integer ; 

Keterangan : string [25] ; 

Begin

Gaji : = 500000 ; 

Jumlahanak : = 3 ; 

Tunjangan : = 0.25 * Gaji + Jumlahanak * 30000 ; 

Total : = Gaji + Tunjangan ; 

Keterangan : = ‘Karyawan Teladan’ ; 

Writeln ( ‘ Gaji bulanan = Rp. ‘ , Gaji ) ; 

Writeln ( ‘ Tunjangan = Rp. ‘ , Tunjangan ) ; 

Page 10: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln ( ‘ Total gaji = Rp. ‘ , Total ) ; 

Writeln ( ‘ Keterangan = Rp. ‘ , Keterangan ) ; 

End .

1.3.3 Deklarasi Tipe 

Pascal menyediakan beberapa macam tipe data, yaitu : 

1. tipe data sederhana, terdiri dari : 

a. tipe data standar : integer, real, char, string, Boolean.

b. Tipe data didefinisikan pemakai : enumerated atau scalar, subrange 

2. Tipe data terstruktur : array, record, file, set 

3. Tipe data penunjuk 

Contoh :

Type

Pecahan = real ; 

Bulat = integer ; 

Huruf = string [25] ; 

Begin

End .

1.3.4 Deklarasi Label 

Jika program menggunakan statement Goto untuk meloncat ke suatu statement

yang tertentu, maka dibutuhkan suatu label pada statement yang dituju dan label

tersebut harus di deklarasikan terlebih dahulu pada bagian deklarasi. Menggunakan

kata cadangan Label diikuti oleh kumpulan identifier label dengan dipisahkan oleh

koma dan diakhiri dengan titik koma.

Contoh :

Page 11: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Label

Output : Bahasa 

Pascal

100, selesai ; 

Begin

Writeln ( ‘Bahasa’ ) ; 

Goto 100 ; 

Writeln ( ‘Cobol’ ) ; 

100 : 

Writeln ( ‘Pascal’ ) ; 

Goto selesai ; 

Writeln ( ‘Fortran’ ) ; 

Selesai : 

End .

1.3.5 Deklarasi Prosedur 

Prosedur merupakan bagian yang terpisah dari program dan dapat diaktifkan

dimanapun didalam program. Prosedur dibuat sendiri bilamana program akan

dibagi-bagi menjadi beberapa blok-blok modul. Prosedur dibuat didalam program

dengan cara mendeklarasikannya dibagian deklarasi prosedur. Menggunakan kata

cadangan Procedure.

Contoh :

Procedure tambah ( x, y : integer ; var hasil : integer ) ; 

Begin

Hasil : = x + y ; 

End ; 

Page 12: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Output : 

2 + 3 = 5 

{program utama} 

var

z : integer ; 

Begin

Tambah ( 2, 3, z ) ; 

Writeln ( ‘ 2 + 3 = ‘, z ); 

End .

1.3.6 Deklarasi Fungsi 

Fungsi juga merupakan bagian program yang terpisah mirip dengan prosedur,

tetapi ada beberapa perbedaannya. Kata cadangan yang digunakan Function. 

Contoh :

Function Tambah ( x, y : integer ) : integer ; 

Begin

Tambah : = x + y ; 

End ; 

{program utama} 

Begin

Writeln ( ‘ 2 + 3 = ‘ , Tambah ( 2, 3)) ; 

End .

1.4 Unit 

Suatu unit adalah kumpulan dari konstanta, tipe-tipe data, variable, prosedur dan

fungsi-fungsi. Tiap-tiap unit tampak seperti suatu program Pascal yang terpisah.

Unit standar sudah merupakan kode mesin (sudah dikompilasi), bukan kode

Page 13: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

sumber Pascal lagi dan sudah diletakkan di memori pada waktu menggunakan

pascal. Untuk menggunakan suatu unit, harus diletakkan suatu anak kalimat Uses

diawal blok program, diikuti oleh daftar nama unit yang digunakan. 

1.4.1 Unit System 

Sebenarnya adalah pustaka dari runtime Turbo Pascal yang mendukung semua

proses yang dibutuhkan pada waktu runtime. Unit system berisi semua prosedur

dan fungsi standar turbo pascal. Unit system ini akan secara otomatis digunakan

didalam program, sehingga boleh tidak disebutkan didalam anak kalimat Uses.

1.4.2 Unit Crt 

Digunakan untuk memanipulasi layer teks ( windowing, peletakkan cursor dilayar,

color untuk teks, kode extanded keyboard dan lainnya). Unit standar crt hanya

dapat digunakan oleh program yang digunakan dikomputer IBM PC, IBM AT,

IBM PS/2 atau yang kompatibel dengannya. 

Contoh :

Uses crt ; 

Begin

Clrscr ; 

Writeln ( ‘Hallo’ ) ; 

Writeln ( ‘-------‘ ) ; 

End .

Fungsi standar yang menggunakan unit Crt adalah : 

KeyPressed

ReadKey

WhereX

Page 14: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

WhereY

1.4.3 Unit Printer 

Merupakan unit yang sangat kecil dirancang untuk penggunaan printer didalam

program.

Contoh :

Uses printer ; 

Begin

Writeln ( Lst, ‘Hallo’ ) ; 

Writeln ( Lst, ‘-------‘ ) ; 

End .

1.4.4 Unit Dos 

Digunakan bila akan menggunakan prosedur-prosedur dan fungsi-fungsi standar

yang berhubungan dengan DOS call, semacam DetTime, SetTime, DiskSize,

DiskFree dan lainnya.

Contoh :

Uses Dos ; 

Begin

Writeln ( DiskFree(0), ‘ byte sisa isi disk ‘ ) ; 

End .

1.4.5 Unit Graph 

menyediakan suatu kumpulan rutin grafik yang canggih, sehingga dapat

memanfaatkannya untuk keperluan-keperluan pembuatan grafik. 

contoh :

Page 15: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Uses graph ; 

Var

DriveGrafik, ModeGrafik : integer ; 

I, x, y : integer ; 

Begin

DriveGrafik : = detect ; 

…….

…….

End .

. DASAR PEMROGRAMAN

Untuk membuat sebuah program kita pastinya membutuhkan sebuah atau beberapa software yang mendukung pembuatan program tersebut dan sesuai dengan kemampuan kita dalam bahasa pemrograman. Bahasa pemrograman diklasifikasikan menjadi 3 jenis yaitu :

Low – level programing language

Tingkat bahasa pemrograman ini disebut “rendah” (low level) dikarenakan kurangnya abstraksi atau kurangnya penggambaran oleh kode instruksi yang ada antara bahasa natural (manusia) dan bahasa mesin. Dan karena itu bahasa ini sering disebut bahasa mesin.

High – level programing language

Page 16: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Bahasa pemrograman di tingkat ini sudah memiliki abstraksi yang luas dan memiliki kemiripan dengan bahasa natural (manusia) terutama bahasa inggris. Dan bahasa ini sangat mudah di gunakan dan biasanya bahasa pemrograman ini digunakan untuk orang awam yang ingin belajar bahasa pemrograman.

Very high – level programing language.

Bahasa ini memiliki abstraksi yang sangat tinggi dari pada High – level language

dan biasanya digunakan untuk menunjang produktivitas para programer

profesional. Nah .. untuk pembelajaran tahap awal kita akan membahas tentang

salah satu bahasa pemrograman tingakt tinggi yaitu bahasa pemrograman

PASCAL. Sebelum itu kita harus belajar tentang algoritma pemrograman yang

biasanya diimplementasikan denganFlowchart atau Pseudocode. Pembuatan

algoritma ini bertujuan untuk mempermudah pembuatan program, algoritma juga

bisa dikatakan sebagai kerangka awal sebuah program. I.1 Flowchart Flowchart

merupakan skema penggambaran tahap – tahap esekusi dalam sebuah program

yang akan kita buat dalam bentuk simbol. Beberapa macam simbol itu adalah :

Pseudocode adalah penulisan algoritma menggunakan gaya bahasa

pemrograman pemrograman tertentu. Contoh deskripsi algoritma di atas

bila ditulis menggunkan gaya bahasa PASCAL akan berbentuk:

BEGIN { mulai }

{ input } read(R); { proses } jika R <= 0 then tulis("Data salah !") selain itu

l_Lingkaran = PHI x R x R; { output } tulis(l_Lingkaran); END; { selesai }

BAHASA PASCAL

Page 17: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

1. Sejarah PASCAL

Merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrograman

untuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untuk

mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth

dari Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan

anggota grup yang membuat ALGOL. Tahun 1971, dia menerbitkan suatu

spesifikasi untuk highly-structured language (bahasa tinggi yang

terstruktur) yang menyerupai ALGOL. Dia menamainya dengan PASCAL

(seorang filsuf dan ahli matematika dari Perancis) Pascal bersifat data

oriented, yaitu programmer diberi keleluasaan untuk mendefinisikan data

sendiri. Pascal juga merupakan teaching language (banyak dipakai untuk

pengajaran tentang konsep pemrograman). Kelebihan yang lain adalah

penulisan kode Pascal yang luwes, tidak seperti misalnya FORTRAN, yang

memerlukan programmer untuk menulis kode dengan format tertentu.

Bentuk dasar program Pascal adalah seperti berikut:

program TITLE ; begin pernyataan; pernyataan end.

2. PASCAL sebagai bahasa terstruktur

Sebagai bahasa terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut:

1. Berurutan Susunan dari kode-kode dalam teks Pascal harus ditulis

secara urut dari atas, pernyataan-pernyataan yang ditulis lebih awal akan

dieksekusi lebih dahulu. Oleh karena itu, suatu pernyataan yang

menyangkut suatu variabel di dalam program, maka variable itu harus

terdefinisi dahulu sebelumnya. Hal ini terutama menyangkut pada

Page 18: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

pemanggilan sub-program oleh sub-program yang lain. Bisa dibaca lebih

lanjut pada bagian sub-program.

Page 19: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

2. Blok dengan batas-batas yang jelas. Pascal memberikan

pembatas yang jelas pada tiap-tiap blok, seperti pada blok program utama,

sub-program, struktur kontrol (pengulangan/ pemilihan), dll. Pemakaian

kata kunci begin untuk mengawali operasi pada blok dan end untuk

menutupnya memudahkan programmer menyusun programnya dengan

mudah.

Seperti contoh:

If X>0 then begin Write ( ‘ bilangan positif’); Writeln ( ‘ program selesai’);

end;

3. Satu pintu masuk dan satu pintu keluar pada blok pemilihan dan

pengulangan. Contoh di atas juga mengilustrasikan pintu masuk tunggal

pada suatu blok pemilihan yaitu suatu test logika X>0, dengan pintu

keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah

output tapi suatu paket perintah yang dirangkai dengan begin .. end.

3. Bakuan PASCAL

Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa

versi, diantaranya: USCD PASCAL, MS PASCAL, TURBO PASCAL dll.

Dengan semakin berkembangnya teknologi dalam komputasi, Pascal

dimanfaatkan untuk pengembangan DELPHI (berasal dari nama suatu kota

di masa Yunani kuno), suatu bahasa pemrograman visual yang

menonjolkan pada efek grafis dan orientasi pada objek-objek yang siap

dipakai, karena memiliki Visual Component Library (VCL).

4. Struktur Bahasa PASCAL secara umum

Page 20: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pascal mempunyai struktur sebagai berikut:

1. Bagian Judul Program

2. Bagian Deklarasi

a. Deklarasi tipe data (TYPE) b. Deklarasi variabel (VAR) c. Deklarasi

konstanta (CONST) d. Deklarasi label (LABEL) e. Deklarasi sub-

program (PROCEDURE dan FUNCTION)

3. Bagian Program Utama Perintah-perintah.

Teks Pascal setidaknya memiliki bagian Judul Program, bagian Deklarasi,

dan Bagian Program Utama yang berupa perintah-perintah. Sedangkan

untuk bagian deklarasi menyesuaikan dengan isi dari program itu sendiri.

Contoh program PASCAL:

program TAMBAH_00; { Menjumlahkan dua bilangan yang nilainya

diberikan dalam perintah} var X, Y, Z: integer; { Deklarasi variabel X,Y dan

Z sebagai bilangan bulat } BEGIN { Program Utama Mulai } X := 50;

{ Perintah memberikan nilai 50 pada var. X } Y := 25; { Perintah

memberikan nilai 25 pada var. Y } Z := X + Y; { Perintah menjumlahkan X

dan Y serta menyimpan hasilnya ke Z} END. { Akhir Program Utama }

Page 21: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pada contoh ini nilai X dan Y tidak bisa sembarang, karena didefiniskan

tertentu. Agar nilai X dan Y bisa bebas ditentukan, nilai X dan Y dibaca dari

default input.

program TAMBAH_01; { Menjumlahlan dua buah bilangan yang dibaca dari

default input } var X, Y, Z: integer; { Deklarasi variabel X,Y dan Z sebagai

bilangan bulat } BEGIN { Program Utama Mulai } read(X); { Membaca nilai

X lewat key-board } read(Y); { Membaca nilai Y lewat key-board } Z := X +

Y; { Menjumlahkan X dan Y serta menyimpan hasilnya ke Z } write(Z);

{ Menyajikan Z ke layar monitor } END. { Akhir Program Utama }

Dasar Bahasa PASCAL

 Unsur-unsur Pemrograman

a. Mendapatkan data dengan membaca data dari default input (key board,

file atau sumber data lainnya). b. Menyimpan data ke dalam memori

dengan struktur data yang sesuai, c. Memproses data dengan instruksi

yang tepat. d. Menyajikan atau mengirimkan hasil olahan data ke default

output (monitor, file atau tujuan lainnya).

Dalam mengolah data diperlukan pengelolaan instruksi terstruktur:

a. Beberapa instruksi dikelompokkan dalam satu blok atau model yang

mengerjakan tugas tertentu. b. Beberapa perintah dilaksanakan dengan

persyaratan tertentu. c. Beberapa perintah dilaksanakan berulang dengan

jumlah pengulangan tertentu.

Page 22: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Identifier Digunakan untuk nama: Program, Sub-program (procedure dan

function), nama: Variable, Constant, Type, Label.

Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam

program. Ketentuan penulisan identifier

a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z,

A sampai Z atau karakter '_' (underscore - garis bawah) b. Karakter

berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik

(huruf-numerik). c. Panjang nama, pada berbagai versi Pascal umumnya

antara 32 - 63. d. Tidak boleh menggunakan karakter istimewa: + - * / | \ =

< > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` " ' dan ? Contoh penulisan: Penulisan

yang benar: X _PQR Beta Sudut_Alpha luasLingkaran Penulisan yang

salah: 3D sisi-Kanan B

Tipe Data dan Operator

Tipe Data menunjukkan suatu nilai yang dpat digunakan oleh sutu variable yang

bersangkutan.

Tipe Data dalam Pascal :

1. Tipe Data Sederhana, terdiri dari :

a. Tipe data standar :

– integer : merupakan tipe data berupa bilangan bulat

- real : merupakan jenis bilangan pecahan

– char : merupakan karakter yg ditulis diantara tanda petik tunggal. Ex : ‘A’, ‘a’,

’5′ dll

– string : merupakan urut-urutan dari karakter yang terletak di antara tanda petik

tunggal.

– boolean : merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE

Page 23: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

atau FALSE .

b. Tipe data didefinisikan pemakai

2. Tipe Data Terstruktur, terdiri dari :

a. Array

b. Record

c. File

d. Set

3. Tipe Data PointerOperator

Tanda operasi (operator) di dalam bahasa Pascal di kelompokkan dalam :

1. Assignment operator (operator pengerjaan) menggunakan simbol titik dua

diikuti oleh tanda sama dengan (:=). Contoh –> A:=B;

2. Binary operator digunakan untuk mengoperasikan dua buah operand yang

berbentuk konstanta ataupun variable. Operator ini digunakan untuk operasi

arithmatika yang berhubungan dgn nilai tipe data Integer dan Real. Operasi yang

dilakukan adalah : Pertambahan (+), Pengurangan (-), Perkalian (*), Pembagian

Bulat (DIV), Pembagian Real (/) dan Modulus atau Sisa Pembagian (MOD)

3. Unary operator, operator ini menggunakan sebuah operand saja dapat berupa

unary minus dan unary plus. Contoh : +2.5, a+(+b) dll

4. Bitwise operator digunakan untuk operasi bit per bit pada nilai integer.

Operator yang digunakan (NOT, AND, OR, XOR, Shl, Shr

Dasar Program Pascal

Unsur-unsur Pemrograman

a. Mendapatkan data dengan membaca data dari default input (key board, file atau

sumber data lainnya).

Page 24: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

b. Menyimpan data ke dalam memori dengan struktur data yang sesuai,

c. Memproses data dengan instruksi yang tepat.

d. Menyajikan atau mengirimkan hasil olahan data ke default output (monitor, file

atau tujuan lainnya).

Nama yang dipergunakan du dalam program Pascal disebut dengan pengenal

atau Identifier. Identifier digunakan untuk nama: Program, Sub-program

(procedure dan function), nama: Variable, Constant, Type, Label.

Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program.

Ketentuan penulisan identifier

a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A

sampai Z atau karakter ‘_’ (underscore – garis bawah)

b. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi

alphanumerik (huruf-numerik).

c. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63.

d. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { }

$ # ~ ! % & ` ” ‘ dan ? Contoh penulisan:

Penulisan yang benar: NamaMahasiswa, Gaji_Karyawan, PX4, dll.

Penulisan yang salah: 3X, A & B, C Z dll.

Variable adalah identifier yang berisi data yang dapat berubah-ubah nilainya di

dalam program. Deklarasi Variable adalah :

a. Memberikan nama variabel sebagai identitas pengenal

b. Menentukan tipe data variabel

Contoh deklarasi variabel: var X : integer;

R : real;

C : char;

T : boolean;

Page 25: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Konstanta adalah identifier yang berisi data yang nilainya tidak berubah di dalam

program.

Deklarasi Konstanta adalah:

a. Memberikan nama konstanta sebagai identitas pengenal

b. Menentukan nilai konstanta

Contoh deklarasi konstanta: conts MaxSize = 100; {integer}

ExitC = ‘Q’; {char}

Reserved Words atau kata-kata cadangan pada Pascal adalah kata-kata yang sudah

didefinisikan oleh Pascal yang mempunyai maksdu tertentu.Suatu Unit adalah

kumpulan dari konstanta, tipe-tipe data, variabel, prosedur dan fungsi-fungsi. Unit

standar pada Pascal yang bisa langsung digunakan adalah System, Crt, Printer Dos

dan Graph. Untuk menggunakan suatu unit, maka kita harus meletakkan clausa

atau anak kalimat Uses di awal blok program, diikuti oleh daftar nama unit yang

digunakan. Pada materi ini yang akan dibahas adalah unit Crt. Unit ini Color pada

teks, kode extended keyboard dan lain sebagainya.digunakan untuk memanipulasi

layar teks (windowing, peletakan cursor di layar,

 Beberapa Statemen Turbo Pascal

Statemen adalah perintah untuk pengerjaan program pascal.

Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan

BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen

diakhiri dengan titik koma [;].

Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi

dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.

1. Statemen-statemen yang digunakan untuk input/output.

Page 26: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

# Read/Readln [prosedur].

Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke

dalam suatu variabel.

Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;])

Keterangan : x = variabel.

Read = pada statemen ini posisi kursor tidak

pindah ke baris selanjutnya.

Readln = pada statemen ini posisi kursor akan

pindah ke baris selanjutnya setelah di

input.

# Write/Writeln [prosedur].

Digunakan untuk menampilkan isi dari suatu nilai variable di

layar.

Sintaks: Write/Writeln(x);

Keterangan : x = variabel.

Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor

2. Statemen-statemen yang digunakan untuk pengaturan letak layar.

Page 27: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

# ClrScr [prosedur].

Perintah ini digunakan untuk membersihkan layar.

sintaks: ClrScr; ��[Clear screen]

PROSESOR

sejarah perkembangan prosesor Intel dan para clone-nya yang berhasil disarikan

Debut Intel dimulai dengan processor seri MCS4 yang merupakan cikal bakal dari

prosesor i4040. Processor 4 bit ini yang direncanakan untuk menjadi otak calculator , pada tahun

yang sama (1971), intel membuat revisi ke i440. Awalnya dipesan oleh sebuah perusahaan

Jepang untuk pembuatan kalkulator , ternyata prosesor ini jauh lebih hebat dari yang diharapkan

sehingga Intel membeli hak guna dari perusahaan Jepang tersebut untuk perkembangan dan

penelitian lebih lanjut. Di sinilah cikal bakal untuk perkembangan ke arah prosesor komputer.

Berikutnya muncul processor 8 bit pertama i8008 (1972), tapi agak kurang disukai karena

multivoltage.. lalu baru muncul processor i8080, disini ada perubahan yaitu jadi triple voltage,

pake teknologi NMOS (tidak PMOS lagi), dan mengenalkan pertama kali sistem clock generator

(pake chip tambahan), dikemas dalam bentuk DIP Array 40 pins. Kemudian muncul juga

processor2 : MC6800 dari Motorola -1974, Z80 dari Zilog -1976 (merupakan dua rival berat),

dan prosessor2 lain seri 6500 buatan MOST, Rockwell, Hyundai, WDC, NCR dst. Z80 full

compatible dengan i8008 hanya sampai level bahasa mesin. Level bahasa rakitannya berbeda

(tidak kompatibel level software). Prosesor i8080 adalah prosesor dengan register internal 8-bit,

bus eksternal 8-bit, dan memori addressing 20-bit (dapat mengakses 1 MB memori total), dan

modus operasi REAL.

Thn 77 muncul 8085, clock generatornya onprocessor, cikal bakalnya penggunaan single

voltage +5V (implementasi s/d 486DX2, pd DX4 mulai +3.3V dst).

Page 28: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

i8086, prosesor dengan register 16-bit, bus data eksternal 16-bit, dan memori addressing

20-bit. Direlease thn 78 menggunakan teknologi HMOS, komponen pendukung bus 16 bit sangat

langka , sehingga harganya menjadi sangat mahal.

Maka utk menjawab tuntutan pasar muncul i8088 16bit bus internal, 8bit bus external.

Sehingga i8088 dapat memakai komponen peripheral 8bit bekas i8008. IBM memilih chip ini

untuk pebuatan IBM PC karena lebih murah daripada i8086. Kalau saja CEO IBM waktu itu

tidak menyatakan PC hanyalah impian sampingan belaka, tentu saja IBM akan menguasai pasar

PC secara total saat ini. IBM PC first release Agustus 1981 memiliki 3 versi IBM PC, IBM PC-Jr

dan IBM PC-XT (extended technology). Chip i8088 ini sangat populer, sampai NEC

meluncurkan sebuah chip yang dibangun berdasarkan spesifikasi pin chip ini, yang diberi nama

V20 dan V30. NEC V20 dan V30 adalah processor yang compatible dengan intel sampai level

bahasa assembly (software).

Chip 8088 dan 8086 kompatibel penuh dengan program yang dibuat untuk chip 8080, walaupun

mungkin ada beberapa program yang dibuat untuk 8086 tidak berfungsi pada chip 8088

(perbedaan lebar bus)

Lalu muncul 80186 dan i80188.. sejak i80186, prosessor mulai dikemas dalam bentuk

PLCC, LCC dan PGA 68 kaki.. i80186 secara fisik berbentuk bujursangkar dengan 17 kaki

persisi (PLCC/LCC) atau 2 deret kaki persisi (PGA) dan mulai dari i80186 inilah chip DMA dan

interrupt controller disatukan ke dalam processor. semenjak menggunakan 286, komputer IBM

menggunakan istilah IBM PC-AT (Advanced Technology)dan mulai dikenal pengunaan istilah

PersonalSystem (PS/1). Dan juga mulai dikenal penggunaan slot ISA 16 bit yang dikembangkan

dari slot ISA 8 bit , para cloner mulai ramai bermunculan. Ada AMD, Harris & MOS yang

compatible penuh dengan intel. Di 286 ini mulai dikenal penggunaan Protected Virtual Adress

Mode yang memungkinkan dilakukannya multitasking secara time sharing (via hardware

resetting).

Tahun 86 IBM membuat processor dengan arsitektur RISC 32bit pertama untuk kelas PC.

Namun karena kelangkaan software, IBM RT PC ini “melempem” untuk kelas enterprise, RISC

ini berkembang lebih pesat, setidaknya ada banyak vendor yang saling tidak kompatibel.

Page 29: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

* Lalu untuk meraih momentum yang hilang dari chip i8086, Intel membuat i80286,

prosesor dengan register 16-bit, bus eksternal 16-bit, mode protected terbatas yang dikenal

dengan mode STANDARD yang menggunakan memori addressing 24-bit yang mampu

mengakses maksimal 16 MB memori. Chip 80286 ini tentu saja kompatibel penuh dengan chip-

chip seri 808x sebelumnya, dengan tambahan beberapa set instruksi baru. Sayangnya chip ini

memiliki beberapa bug pada desain hardware-nya, sehingga gagal mengumpulkan pengikut.

Pada tahun 1985, Intel meluncurkan desain prosesor yang sama sekali baru: i80386.

Sebuah prosesor 32-bit , dalam arti memiliki register 32-bit, bus data eksternal 32-bit, dan

mempertahankan kompatibilitas dengan prosesor generasi sebelumnya, dengan tambahan

diperkenalkannya mode PROTECTED 32-BIT untuk memori addressing 32-bit, mampu

mengakses maksimum 4 GB , dan tidak lupa tambahan beberapa instruksi baru. Chip ini mulai

dikemas dalam bentuk PGA (pin Grid Array)

Prosesor Intel sampai titik ini belum menggunakan unit FPU secara

internal . Untuk dukungan FPU, Intel meluncurkan seri 80×87. Sejak 386 ini mulai muncul

processor cloner : AMD, Cyrix, NGen, TI, IIT, IBM (Blue Lightning) dst, macam-macamnya :

i80386 DX (full 32 bit)

i80386 SX (murah karena 16bit external)

i80486 DX (int 487)

i80486 SX (487 disabled)

Cx486 DLC (menggunakan MB 386DX, juga yang lain)

Cx486 SLC (menggunakan MB 386SX)

i80486DX2

i80486DX2 ODP

Cx486DLC2 (arsitektur MB 386)

Cx486SLC2 (arsitektur MB 386)

i80486DX4

i80486DX4 ODP

i80486SX2

Pentium

Pentium ODP

Page 30: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

* Sekitar tahun 1989 Intel meluncurkan i80486DX. Seri yang tentunya sangat populer,

peningkatan seri ini terhadap seri 80386 adalah kecepatan dan dukungan FPU internal dan skema

clock multiplier (seri i486DX2 dan iDX4), tanpa tambahan instruksi baru. Karena permintaan

publik untuk prosesor murah, maka Intel meluncurkan seri i80486SX yang tak lain adalah

prosesor i80486DX yang sirkuit FPU-nya telah disabled . Seperti yang seharusnya, seri

i80486DX memiliki kompatibilitas penuh dengan set instruksi chip-chip seri sebelumnya.

* AMD dan Cyrix kemudian membeli rancangan prosesor i80386 dan i80486DX untuk membuat

prosesor Intel-compatible, dan mereka terbukti sangat berhasil. Pendapat saya inilah yang

disebut proses ‘cloning’, sama seperti cerita NEC V20 dan V30. AMD dan Cyrix tidak

melakukan proses perancangan vertikal (berdasarkan sebuah chip seri sebelumnya), melainkan

berdasarkan rancangan chip yang sudah ada untuk membuat chip yang sekelas.

* Tahun 1993, dan Intel meluncurkan prosesor Pentium. Peningkatannya terhadap i80486:

struktur PGA yang lebih besar (kecepatan yang lebih tinggi , dan pipelining, TANPA instruksi

baru. Tidak ada yang spesial dari chip ini, hanya fakta bahwa standar VLB yang dibuat untuk

i80486 tidak cocok (bukan tidak kompatibel) sehingga para pembuat chipset terpaksa melakukan

rancang ulang untuk mendukung PCI. Intel menggunakan istilah Pentium untuk meng”hambat”

saingannya. Sejak Pentium ini para cloner mulai “rontok” tinggal AMD, Cyrix . Intel

menggunakan istilah Pentium karena Intel kalah di pengadilan paten. alasannya angka tidak bisa

dijadikan paten, karena itu intel mengeluarkan Pentium menggunakan TM. AMD + Cyrix tidak

ingin tertinggal, mereka mengeluarkan standar Pentium Rating (PR) sebelumnya ditahun 92 intel

sempat berkolaborasi degan Sun, namun gagal dan Intel sempat dituntut oleh Sun karena dituduh

menjiplak rancangan Sun. Sejak Pentium, Intel telah menerapkan kemampuan Pipelining yang

biasanya cuman ada diprocessor RISC (RISC spt SunSparc). Vesa Local Bus yang 32bit adalah

pengembangan dari arsitektur ISA 16bit menggunakan clock yang tetap karena memiliki clock

generator sendiri (biasanya >33Mhz) sedangkan arsitektur PCI adalah arsitektur baru yang

kecepatan clocknya mengikuti kecepatan clock Processor (biasanya kecepatannya separuh

kecepatan processor).. jadi Card VGA PCI kecepatannya relatif tidak akan sama di frekuensi

MHz processor yang berbeda alias makin cepat MHz processor, makin cepat PCI-nya

* Tahun 1995, kemunculan Pentium Pro. Inovasi disatukannya cache memori ke dalam prosesor

menuntut dibuatnya socket 8 . Pin-pin prosesor ini terbagi 2 grup: 1 grup untuk cache memori,

dan 1 grup lagi untuk prosesornya sendiri, yang tak lebih dari pin-pin Pentium yang diubah

Page 31: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

susunannya . Desain prosesor ini memungkinkan keefisienan yang lebih tinggi saat menangani

instruksi 32-bit, namun jika ada instruksi 16-bit muncul dalam siklus instruksi 32-bit, maka

prosesor akan melakukan pengosongan cache sehingga proses eksekusi berjalan lambat. Cuma

ada 1 instruksi yang ditambahkan: CMOV (Conditional MOVe) .

* Tahun 1996, prosesor Pentium MMX. Sebenarnya tidak lebih dari sebuah Pentium dengan unit

tambahan dan set instruksi tambahan, yaitu MMX. Intel sampai sekarang masih belum

memberikan definisi yang jelas mengenai istilah MMX. Multi Media eXtension adalah istilah

yang digunakan AMD . Ada suatu keterbatasan desain pada chip ini: karena modul MMX hanya

ditambahkan begitu saja ke dalam rancangan Pentium tanpa rancang ulang, Intel terpaksa

membuat unit MMX dan FPU melakukan sharing, dalam arti saat FPU aktif MMX non-aktif, dan

sebaliknya. Sehingga Pentium MMX dalam mode MMX tidak kompatibel dengan Pentium.

Bagaimana dengan AMD K5? AMD K5-PR75 sebenarnya adalah sebuah ‘clone’ i80486DX

dengan kecepatan internal 133MHz dan clock bus 33MHz . Spesifikasi Pentium yang didapat

AMD saat merancang K5 versi-versi selanjutnya dan Cyrix saat merancang 6×86 hanyalah

terbatas pada spesifikasi pin-pin Pentium. Mereka tidak diberi akses ke desain aslinya. Bahkan

IBM tidak mampu membuat Intel bergeming (Cyrix, mempunyai kontrak terikat dengan IBM

sampai tahun 2005)

Mengenai rancangan AMD K6, tahukah anda bahwa K6 sebenarnya adalah rancangan milik

NexGen ? Sewaktu Intel menyatakan membuat unit MMX, AMD mencari rancangan MMX dan

menambahkannya ke K6. Sayangnya spesifikasi MMX yang didapat AMD sepertinya bukan

yang digunakan Intel, sebab terbukti K6 memiliki banyak ketidakkompatibilitas instruksi MMX

dengan Pentium MMX.

* Tahun 1997, Intel meluncurkan Pentium II, Pentium Pro dengan teknologi MMX yang

memiliki 2 inovasi: cache memori tidak menjadi 1 dengan inti prosesor seperti Pentium Pro ,

namun berada di luar inti namun berfungsi dengan kecepatan processor. Inovasi inilah yang

menyebabkan hilangnya kekurangan Pentium Pro (masalah pengosongan cache) Inovasi kedua,

yaitu SEC (Single Edge Cartidge), Kenapa? Karena kita dapat memasang prosesor Pentium Pro

di slot SEC dengan bantuan adapter khusus. Tambahan : karena cache L2 onprocessor, maka

kecepatan cache = kecepatan processor, sedangkan karena PII cachenya di”luar” (menggunakan

Page 32: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

processor module), maka kecepatannya setengah dari kecepatan processor. Disebutkan juga

penggunaan Slot 1 pada PII karena beberapa alasan :

Pertama, memperlebar jalur data (kaki banyak – Juga jadi alasan Socket 8), pemrosesan pada

PPro dan PII dapat paralel. Karena itu sebetulnya Slot 1 lebih punya kekuatan di Multithreading /

Multiple Processor. ( sayangnya O/S belum banyak mendukung, benchmark PII dual

processorpun oleh ZDBench lebih banyak dilakukan via Win95 ketimbang via NT)

Kedua, memungkinkan upgrader Slot 1 tanpa memakan banyak space di Motherboard sebab bila

tidak ZIF socket 9 , bisa seluas Form Factor(MB)nya sendiri konsep hemat space ini sejak 8088

juga sudah ada .Mengapa keluar juga spesifikasi SIMM di 286? beberapa diantaranya adalah

efisiensi tempat dan penyederhanaan bentuk.

Ketiga, memungkinkan penggunaan cache module yang lebih efisien dan dengan speed tinggi

seimbang dengan speed processor dan lagi-lagi tanpa banyak makan tempat, tidak seperti AMD /

Cyrix yang “terpaksa” mendobel L1 cachenya untuk menyaingi speed PII (karena L2-nya

lambat) sehingga kesimpulannya AMD K6 dan Cyrix 6×86 bukan cepat di processor melainkan

cepat di hit cache! Sebab dengan spec Socket7 kecepatan L2 cache akan terbatas hanya secepat

bus data / makin lambat bila bus datanya sedang sibuk, padahal PII thn depan direncanakan

beroperasi pada 100MHz (bukan 66MHz lagi). Point inilah salah satu alasan kenapa intel

mengganti chipset dari 430 ke 440 yang berarti juga harus mengganti Motherboard.

mata kuliah

Modul Praktek

Pemrograman DasarPembahasan 1

Page 33: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

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

Struktur Bahasa Pascal

 Judul

Program ;

Uses ;

 Bagian Deklarasi

Label ;

Const ;

Type ;

Var ;

Procedure ;

Function ;

 Bagian Pernyataan

Page 34: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Begin

;

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

Belajar Turbo

Pascal Versi 7.0

Page 35: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Tugas:

Buatlah Program cetak dilayar Biodata diri anda

Pembahasan 2

PERINTAH DASAR – IDENTIFIER - DEKLARASI

Perintah Dasar/Sederhana Pascal

 Write ( ‘Text/tulisan’,Variabel);

Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah baris

 WriteLn( ‘Text/Tulisan’,Variabel);

Perintah untuk menampilkan/cetak dilayar monitor lalu pindah baris kebawah

 Read(Variabel);

Perintah untuk menginput/mengisi data tanpa pindah baris

 ReadLn(Variabel);

Perintah untuk menginput/mengisi data lalu pindah baris

Identifier/Pengenal Data

Digunakan untuk penamaan elemen-elemen deklarasi seperti Label, Constanta, type, variabel, procedure, function

Page 36: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Syarat Identifier

 Diawali huruf

 Tidak boleh ada spasi/blank

 Tidak boleh menggunakan reserved word

 Tidak boleh menggunakan simbol khusus,

kecuali underscore(tanda bawah)

 Panjang maximal 63 character

Pembahasan 3

PENGUNAAN USES CRT – TIPE SEDERHANA - OPERATOR

Penggunaan Unit CRT (Cathoda Ray Tube)

 CLRSCR ;

Untuk membersihkan layar

 Delay (nilainya);

Untuk menghentikan program dalam satuan milisecond

 Gotoxy(x,y);

Untuk menempatkan kursor diposisi x dan y

 Window(x1,y1,x2,y2)

Untuk membuat batasan jendela pada layar

Page 37: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Tipe Data Bahasa Pascal

 Bilangan Bulat [integer] Terdiri dari

Tipe Jangkauan nilainyaShortint -128 .. 127Byte 0 .. 255Integer -32768 .. 32767Word 0 .. 65535Longint -21747483648 ..

21747483647

 Bilangan Pecahan [real] terdiri dari single, real, double, extended

 Character  satu huruf/simbol saja

 String  lebih dari satu huruf/simbol

 Boolean  data berisi True/False

Operator-Operator Pascal

 Assignment Operator (Operator Pengerjaan)  :=

Contoh A:=5 Nama:=Budi

 Binari Operator  * / + - DIV MOD

 Unary Operator (Operator Tunggal) 

Contoh -5 +2.5

 Bitwise Operator  NOT, AND, OR, XOR, SHL, SHR

 Relasi Operator (Operator Relasi)  = <> > <= >= IN

Page 38: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

 Logical Operator (Operator Logika)  NOT, AND, OR, XOR

 Address Operator (Operator Alamat)  @ ^

 Set Operator (Operator Himpunan)  + - *

 String Operator  +

Contoh Nama1:= ‘Syaiful Anwar’; Nama2:= ‘Anwar’;

Nama3 := Nama1 + Nama2 ;

Hasilnya Nama3  SyaifulAnwar

10); WRITELN(15 DIV 2); WRITELN(15 MOD 2); WRITELN(15/2); WRITELN(12

AND 23); WRITELN(12 OR 23); READLN; END. Hasilnya False True 7 1 7.5000000E+00 4

31" width="197" align="left" height="750" hspace="12">Tugas Program

1. Buatlah Program Luas Segi Tiga

2. Buatlah Program Luas dan Keliling Lingkaran

3. Buatlah Program Persegi Panjang

Pembahasan 4

DEKLARASI TIPE - DEKLARASI LABEL

Deklarasi Type

Page 39: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pengenal (identifier) dari data yang digunakan harus diperkenalkan Tipenya. Jika ingin menggunakan tipe data dengan nama yang dibuat oleh pemakai, maka harus disebutkan tipe data standarnya.

Deklarasi Label

Deklarasi label digunakan untuk melompati beberapa perintah program. Memiliki arah dan tujuan yaitu dengan menggunakan GOTO

Tugas :

Tugas Program

1. Rubah Program Labelnya dgn Layout sbb

TEXT2 TEXT4 TEXT6

2. Buat luas dan Keliling lingkaran dengan menggunakan deklarasi type dan Var

Pembahasan 5

FORMAT TIPE DATA– LOKASI CURSOR

Tampilan Terformat

Untuk mengatur bentuk tampilan dari tampilan default ke bentuk yang diinginkan atau Batasan cetak

 Parameter Char:n

Batasan cetak/ bentuk tampilan/ jarak tampil data char

Page 40: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

 Parameter String:n

Batasan cetak/ bentuk tampilan/ jarak tampil data string

 Parameter Boolean:n

Batasan cetak/ bentuk tampilan/ jarak tampil data Boolean

 Parameter Integer:n

Batasan cetak/ bentuk tampilan/ jarak tampil data Integer

 Parameter Real:n:m

Batasan cetak/ bentuk tampilan/ jarak tampil data Real

Uses Crt;

Const Kampus=‘Bsi’; {Tipe String}

Nrata=2.5; {Tipe Real}

Ntotal=55; {Tipe Integer}

Cek =True; {Tipe Boolean}

Huruf =‘A’; {Tipe Char}

BEGIN

Clrscr;

Writeln(‘Nama Kampus :’,Kampus);

Writeln(‘Nama Kampus :’,Kampus:3);

Writeln(‘Nama Kampus :’,Kampus:6);

Page 41: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln(‘Nilai Rata :’,Nrata);

Writeln(‘Nilai Rata :’,Nrata:3:0);

Writeln(‘Nilai Rata :’,Nrata:6:1);

Writeln(‘Nilai Total :’,Ntotal:2);

Writeln(‘Nilai Total :’,Ntotal:5);

Writeln(‘Cek Boolean :’,Cek);

Writeln(‘Cek Boolean :’,Cek:7);

Writeln(‘Huruf Abjad :’,Huruf);

Writeln(‘Huruf Abjad :’,Huruf:3);

Readln;

End.

Contoh Program Lokasi Cursor

BEGIN

CLRSCR;

GOTOXY(10,2);

WRITE(‘JUDUL INI TERCETAK DI KOLOM 10 BARIS 2’);

READLN;

END.

Pembahasan 6

Page 42: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

BRANCHING IF TUNGGAL/MAJEMUK – CASE OF

Bracnhing/ Penyeleksian Kondisi

Untuk menyeleksi kondisi-kondisi suatu proses makan diperlukan perintah IF. Adapun bentuk-bentuk IF sbb:

 Statement IF

Bentuk Umum : If Then ;

contoh : IF N>=60 Then Ket:=‘Lulus’;

Bentuk Umum : If Then

Else ;

contoh : IF N>=60 Then Ket:=‘Lulus’

Else Ket:=‘Gagal’;

Nb : apabila dalam satu statement lebih dari 1 baris perintah maka statemen tsb dimasukkan blok

Branching Majemuk

Bentuk Umum : If Then

Else If Then

Else ;

contoh :

Else IF N>74 Then Mutu:=‘Baik’

Page 43: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Else IF N>60 Then Mutu:=‘Cukup’

Else Mutu:=‘Kurang’;

Statement Case…OF

 OF Konstanta1 : ; Konstanta2 : ; Konstanta3 : ; Konstanta4 : ; END;" width="246"

align="left" height="138" hspace="12">

Pembahasan 7

LOOPING ( PERULANGAN )

1. Statement For....Do (Perulangan Counter)

B.U : For variabel_kontrol : = nilai_awal To nilai_akhir Do

Statement ;

B.U : For variabel_kontrol:= nilai_awal DownTo nilai_akhir Do

Statement ;

2. Statement While ... Do (Perulangan Kondisi Terpenuhi)

B.U : While ungkapan_logika Do

Statement ;

3. Statement Repaet...Until (Perulangan Kondisi Tidak Terpenuhi)

B.U : Repeat

Page 44: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Statement ;

Until ungkapan_logika ;

Program Repeat;

Uses crt ;

Var

i : byte ;

begin

clrscr ;

I : = 1 ;

Repeat

writeln ( I ) ;

I : = I +1; Until I >= 5

readln ;

end .Program While ;

Uses crt ;

Var

i : byte ;

begin

clrscr ;

Page 45: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

I : = 0 ;

While I <= 5 Do

begin

writeln(I);

I : = I +1 ;

end ;

readln ;

end .Program For_DownTo;

Uses crt ;

Var

i : byte ;

begin

clrscr ;

for i : = 5 downto 5 do

writeln (‘ Pascal ‘) ;

readln ;

end .

Page 46: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Program For_To ;

Uses crt ;

Var

i : byte ;

begin

clrscr ;

for i : = 1 to 5 do

writeln (‘ Pascal ‘) ;

readln ;

end .

Tugas :

1. Buat deret bilangan ganjil dan deret bilangan genap2. Buatlah deret bilangan Fibonanci  1 1 2 3 5 8 13 21 34 553. Buatlah deret

1 2 3 4 5 b. 1 c. 5 d. 1 2 3 4 5

1 2 3 4 1 2 4 5 2 3 4 5

1 2 3 1 2 3 3 4 5 3 4 5

1 2 1 2 3 4 2 3 4 5 4 5

1 1 2 3 4 5 1 2 3 4 5 5

4. Buatlah deret

1 . 2 1 . 4 1 . 6 1 . 8

Page 47: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

2 . 2 2 . 4 2 . 6 2 . 8

Pembahasan 8

HIMPUNAN / SET

Himpunan termasuk salah satu tipe data terstruktur,yang terdiri dari sejumlah elemen yang bertipe data sama.

Pendefinisian tipe data himpunana diawali dengan kata tercadang Set dan Of,kemudian didikuti dengan tipe elemen.

Bentuk umum : SET OF tipe_elemen

Elemen Himpunan mempunyai bentuk eperti : [daftar_elemen] yang mana etiap elemen harus bertipe sama.

Operator hubungan dalam himpunan

Himp1 = Himp2 Dua Himpunan Dikatakan sama jika jumlah elemen sama dan masing-masing elemen sama.Hasilnya True bila Himp1 sama dengan Himp2

Himp1 <> Himp2 Dua Himpunan Dikatakan tidak sama jika jumlah elemen tidak sama dan masing-masing elemen tidak sama. Hasilnya True bila Himp1 tidak sama dengan Himp2

Himp1 <= Himp2 Hasil bernilai True jika semua elemen dari Himp1 terdapat pada Himp2

Page 48: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Himp1 >= Himp2 Hasil bernilai True jika semua elemen dari Himp2 terdapat pada Himp1

Elemen In Himp Memeriksa elemen adalah anggota himpunan Himp atau tidak.Hasil true jika elemen adalah anggota dari Himp

Operator Operasi Himpunan

Himp1 * Himp2 Operasi Interseksi himpunan.untuk memperoleh himpunan yang terdiri dari elemen yang merupakan anggota himpunan Himp1 dan sekaligus juga merupakan anggota Himp2

Himp1 + Himp2 Operasi penggabungan himpunan.Untuk memperoleh himpunan yang terdiri dari gabungan elemen anggota Himp1 dan Himp2

Himp1 - Himp2 Operasi selisih himpunan.Untuk memperoleh himpunan yang terdiri dari elemen anggota Himp1 yang bukan anggota himpunan Himp2

Contoh Ungkapan Hasil[1,2,3,4,5] * [1,3,5,7] [1,3,5][1,2,3,4,5] * [6,7,8,9,10] [][1,2,3] * [] [][1,2,3,4,5] + [6,7] [1,2,3,4,5,6,7][1,2,4] + [1,2,3] [1,2,3,4][1,2,3,4,5] - [1,2] [3,4,5][1,2,3,4,5] - [4,5,6,7] [1,2,3]

Page 49: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

[4,5,6,7] - [1,2,3,4,5] [4,6,7]

Contoh Program Himpunan

Program Himpunan;

Uses Crt;

Type Hs = Set Of 1..9;

Var H1,H2,H3 : Hs;

BEGIN

CLRSCR;

H1:=[1,2,3,4,5];

H2:=[3,5,6,7,8];

H3:=H1+H2;

IF H3=[1..8] Then Writeln('H1+H2 Adalah [1..8]') Else Writeln('Salah');

Readln;

H3:=H1-H2;

IF H3=[1,2,4] Then Writeln('H1-H2 Adalah [1,2,4]') Else Writeln('Salah');

Readln;

H3:=H1*H2;

IF H3=[3,5] Then Writeln('H1*H2 Adalah [3,5]') Else Writeln('Salah');

Readln;

END.

Page 50: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pembahasan 9

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

Page 51: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln ( ‘ ***************************** ‘ ) ;

Writeln ( ‘ PENILAIAN UJIAN MAHASISWA AsiA ‘ ) ;

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 AsiA ‘ ) ;

Writeln ( ‘ ***************************** ‘ ) ;

Writeln ( ‘ Nama : ‘ , nama[i] ) ;

Writeln ( ‘ Nilai Tugas : ‘ , tugas[i] ) ;

Writeln ( ‘ Nilai Absen : ‘ , absen[i] ) ;

Writeln ( ‘ Nilai UTS : ‘ , uts[i] ) ;

Page 52: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln ( ‘ Nilai UAS : ‘ , uas[i]) ;

Writeln ( ‘ **************************** ‘ ) ;

Writeln ( ‘ Rata-rata : ‘ , rata : 1: 0 ) ;

Readln ;

End;

END.

Pembahasan 10

PROCEDURE

Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram ( program bagian ). Parameter pada procedure ada 2 :

Bentuk Umum :

PROGRAM Judul_Program ;

BEGIN

..............

END.

Parameter didalam prosedur terdiri dari 2 yaitu :

PROCEDURE judul_prosedur ;

Begin

.............

End ;

Page 53: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

a. Parameter bersifat Lokal artinya bahwa nilai yang terdapat didalam suatu modul program hanya dapat digunakan pada modul yang bersangkutan sehingga tidak dapat digunakan pada modul lain.

b. Parameter bersifat Global artinya bahwa nilai dapat digunakan pada semua modul maka nilai tersebut harus dideklarasikan di atas modul yang akan menggunakannya.

Pemanggilan parameter pada prosedur terdiri dari 2 yaitu :

a. Parameter Secara Nilai ( By Value )

Bersifat satu arah, jika terjadi perubahan pada subprogram, maka tidak akan mempengaruhi program utama.

b. Parameter Secara Acuan ( By Reference )

Bersifat dua arah, jika terjadi perubahan pada subprogram, maka program utamanya akan ikut berubah.

Contoh Program Prosedure Standar

Uses Crt;

Const Bsi='Bina Sarana';

Begin

Clrscr;

Writeln(Copy(Bsi,6,4)); mengambil sebagian dari string

Writeln(Pos('Sarana',Bsi)); mencari posisi string

Writeln(Length(Bsi)); panjang string

Page 54: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln(Concat(Bsi,' Informatika'));  mengabungkan string

Readln;

End.

Pembahasan 11

FUNGSI

Fungsi secara garis besar sama dengan prosedure baik parameter maupun pemanggilan parameternya hanya yang membedakannya adalah nama fungsi harus dideklarasikan dengan type datanya.

Bentuk Umum :

Function Identifier ( daftar_ parameter ) : type data;

Contoh :

Uses crt ;

Bagian Fungsi

Function Hitung ( Var A, B : integer ) : integer ;

Begin

Hitung : = A+B ;

Page 55: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

End ;

Var

X, Y : integer ;

Program Utama

BEGIN

Write ( ‘ Nilai X ? ‘ ) ; readln ( X ) ;

Write ( ‘ Nilai Y ? ‘ ) ; readln ( Y ) ;

Writeln ;

Writeln ( X, ‘ + ‘, Y , ‘ =’, Hitung ( X, Y )) ;

Readln ;

END.

Parameter pada fungsi sama dengan parameter yang ada pada prosedure yaitu :

a. Pemanggilan secara Nilai ( By Value )

Contoh :

Uses crt ;

Page 56: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Function Hitung ( X, Y, Z : integer ) : integer ;

Begin

Z : = X+Y ;

Writeln ( ‘ Nilai X = ‘, X ) ;

Writeln ( ‘ Nilai Y = ‘, Y ) ;

Writeln ( ‘ Nilai Z = ‘, Z ) ;

End ;

Var

A, B, C : integer ;

BEGIN

A : = 5 ; B : = 7 ; C : = 3 ;

Hitung ( A, B, C ) ;

Writeln ( ‘ Nilai A =’, A, ‘ Nilai B = ‘, B, ‘ Nilai C = ‘, C ) ;

Readln ;

END.

c. Pemanggilan secara Reference ( Acuan )

Contoh :

Uses crt ;

Function Hitung ( var A, B, C : integer ) : integer ;

Page 57: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Begin

Hitung : = A+B ;

C : = A * B ;

End ;

Var

X, Y, Z : integer ;

BEGIN

Write ( ‘ Nilai X : ‘ ) ; readln ( X ) ;

Write ( ‘ Nilai Y : ) ; readln ( Y ) ;

Writeln ;

Writeln ( X , ‘ + ‘ , Y, ‘=’, Hitung ( X, Y, Z )) ;

Writeln ( X, ‘ * ’,Y, ‘=’, Z ) ;

Readln ;

END.

Contoh Function Standar Aritmatika & Transfer

Uses Crt;

Const A=2; B=-2;

C=4; D=2.5;

E=2.3; F=2.7;

Page 58: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

G='A';

Begin

Clrscr;

Writeln('Absnya : ',A, '=' ,Abs(A));  Argumen Mutlak

Writeln('Absnya : ',B, '=' ,Abs(-B));

Writeln('Expnya : ',A, '=' ,Exp(A));  Eksponensial Argumen

Writeln('Lnnya : ',A, '=' ,Ln(A));  Logaritma Natural Argumen

Writeln('Sqrnya : ',A, '=' ,Sqr(A));  Kuadrat Argumen

Writeln('Sqrtnya : ',C,'=' ,Sqrt(C));  Akar Argumen

Writeln('Pinya : ',Pi);  angka Pi=3.14

Writeln('Intnya : ',D, '=' ,Int(D));  bagian bulat angka real

Writeln('Truncnya : ',D, '=' ,Trunc(D));  bagian bulat angka real

Writeln('Fracnya : ',D, '=' ,Frac(D));  bagian pecahan real

Writeln('Roundnya : ',E, '=' ,Round(E));  bulatkan angka real

Writeln('Roundnya : ',F, '=' ,Round(F));

Writeln('Ordnya : ',G, '=' ,Ord(G));  Character ke ordinal

Writeln('Chrnya : ',A, '=' ,Chr(67));  ordinal ke character

Readln;

End.

Contoh Dengan Format

Page 59: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Uses Crt;

Const A=2; B=-2;

C=4; D=2.5;

E=2.3; F=2.7;

G='A';

Begin

Clrscr;

Writeln('Absnya : ',A, '=' ,Abs(A));

Writeln('Absnya : ',B, '=' ,Abs(-B));

Writeln('Expnya : ',A, '=' ,Exp(A):5:2);

Writeln('Lnnya : ',A, '=' ,Ln(A):5:2);

Writeln('Sqrnya : ',A, '=' ,Sqr(A));

Writeln('Sqrtnya : ',C,'=' ,Sqrt(C):1:0);

Writeln('Pinya : ',Pi:4:2);

Writeln('Intnya : ',D:3:1, '=' ,Int(D):1:0);

Writeln('Truncnya : ',D:3:1, '=' ,Trunc(D));

Writeln('Fracnya : ',D:3:1, '=' ,Frac(D):3:1);

Writeln('Roundnya : ',E:3:1, '=' ,Round(E));

Writeln('Roundnya : ',F:3:1, '=' ,Round(F));

Writeln('Ordnya : ',G, '=' ,Ord(G));

Page 60: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Writeln('Chrnya : ',A, '=' ,Chr(67));

Readln;

End.

Pembahasan 12

RECORD

Adalah kumpulan item data (field) yang masing-masing dapat mempunyai tipe data yang beda

Contoh

Type

Lgn= Record

Kode : integer;

Nama : string[35];

Piutang : real;

End;

Var Langganan : Lgn;

Menggunakan Tipe Data Record

Tiap-tiap komponen field dari record dapat dipergunakan dengan cara menuliskan

Page 61: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pengenalrecord.pengenalfield

Contoh

Langganan.Nama := ’Maulana’ ;

PengenalField

PengenalRecord

Penulisan statemen diatas dapat menyebabkan statement menjadi panjang

Contoh lain :

Lingkaran.Keliling := 2 * Pi * JariJari ;

Menggunakan Statemen With Do menjadi :

With Lingkaran Do

Begin

Keliling := 2 * Pi * JariJari ;

End;

Contoh :

Uses Crt;

Type

Recsis = Record

Nama : string[15];

Page 62: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Nu : byte;

End;

Var DataSis : Array[1..10] of RecSis;

X, JD : Byte ;

Pred : String[6] ;

BEGIN

CLRSCR ;

Write( ’ Jumlah Data : ’ ) ; Readln(JD) ;

For X := 1 To JD Do

Begin

Write( ’ Nama Siswa : ’ ) ; ReadLn(Datasis[x].Nama) ;

Write( ’ Nilai Ujian : ’ ) ; ReadLn(Datasis[x].Nu) ;

End;

For X := 1 To JD Do

Begin

With Datasis[X] Do

Begin

IF Nu > 60 Then Pred := ’Lulus’ ;

Else Pred := ’Gagal’ ;

Page 63: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

WriteLn(X, ’ ’ , Nama:10, ’ ’ ,Nu:2, ’ ’ , Pred:6);

End;

End;

ReadLn;

END.

Pembahasan 13

FILE

Suatu File terdiri dari urutn komponen yang mempunyai tipe sama. Berbeda dengan larik yang jumlah komponennya sudah pasti, jumlah komponen dalam file sifatnya luwes, yaitu dapat ditambah dan dikurangi sewaktu-waktu

File Teks

Merupakan file yang berisi kumpulan dari karakter yang dibentuk dalam baris-baris dan masing-masing baris diakhiri dengan tanda akhir dari baris berupa karakter carriage return dan karakter line feed. File teks sebenarnya merupakan file dengan tipe char; tetapi mempunyai perbedaan, yaitu nilai yang bukan tipe char dapat direkam dan dibaca oleh File Teks

Prosedur Standar File Teks

Append : digunakan untuk membuka file yang telah ada untuk keperluan menambah data ke dalam file

Write : digunakan untuk merekam data ke file

Page 64: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Flush : digunakan untuk segera merekam data yang ada di buffer ke file Teks

Read : untuk membaca satu atau lebih nilai dari file ke dalam satu atau lebih variabel

SetTextBuf : digunakan untuk membuat buffer yang baru sebagai pengganti dari internal buffer untuk file variabel

Fungsi Standar File Teks

EoLn : untuk mengetahui apakah posisi dari file berada di end-of-line marker atau tidak

SeekEOF : untuk menghasilkan status akhir dari File

SeekEoLn : untuk menghasilkan status akhir baris

Contoh :

Uses Crt ;

Label a,b ;

Var

Vfbarang : text ;

Nabrg : string [20 ];

Hrg : longint ;

Jml : integer ;

X, y : byte ;

Ttl, gth : longint ;

Lagi : char ;

Page 65: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pil : byte ;

BEGIN

A:

Clrscr ;

Writeln ( ‘ MENU PILIHAN FILE TEXT ‘ ) ;

Writeln ( ‘ 1. Rekam Data File Baru ‘ ) ;

Writeln ( ‘ 2. Tambah Data File ‘ ) ;

Writeln ( ‘ 3. Lihat Data’ ) ;

Writeln ( ‘ 4. Exit’ ) ;

Write ( ‘ Silakan Pilih Menu [ 1/2/3/4 ] : ‘ ); readln ( pil ) ;

Case pil of

1..2 : begin

Assign (vfbarang,’barang.txt’ ) ; { variabel file barang }

IF pil =1 then

Rewrite ( vfbarang )

Else

Append (vfbarang ) ;

Lagi : = ‘Y’ ; X : = 0 ;

While (lagi =’Y’) or (lagi = ‘T’) do

begin

write ( ‘ Nama Barang : ‘ ) ; readln ( nabrg );

Page 66: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write ( ’ Harga Barang : ’ ) ; readln ( hrg ) ;

write ( ’ Jumlah Barang : ’ ) ; readln ( jml ) ;

write ( vfbarang, nabrg:1 5 , hrg : 10, jml : 4 ) ;

write ( ’ Isi Data Lagi [ Y/T ] : ’ ) ; readln ( lagi ) ;

end ;

close (vfbarang) ;

goto a ;

end ;

end;

3 : begin

Assign ( vfbarang , ’ barang.txt ’ ) ;

Reset ( vfbarang ) ;

Writeln(’ DATA PENJUALAN BARANG ’ ) ;

Writeln(’**************************************** ’) ;

Writeln(’No Nama Barang Harga Jumlah Total ’ ) ;

Writeln(’*************************************** ’ ) ;

{ proses dan cetak data detail }

y : = 0 ; fth : = 0 ;

While not eof ( vfbarang ) do

Begin

Read ( vfbarang, nabrg, hrg, jml ) ;

Page 67: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Total : = hrg * jml ;

gth : = gth + ttl ;

Inc ( y) ;

Write (y, ’ ’ ,nabar:15, ’ ’ ,hrg:7,’ ’,jml:3, ’ ’,ttl) ;

End ;

{ garis penutup subtotal }

Writeln(’**************************************** ’ ) ;

Writeln (’Grand Total: Rp. ’, gth ) ;

Writeln(’**************************************** ’ ) ;

Close(vfbarang ) ;

Readln ;

goto a ;

end ;

4 : Goto b ;

End ;

Readln ;

b:

END.

File Bertipe

Berbeda dengan file teks yang hanya dapat diakses secara urut, file bertipe disamping dapt pulajuga diakses secara urut(sequential acces, dapat juga

Page 68: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

diakses secara aaak (randam access). Dan Tipe dari file bertipe dapat berupa tipe integer, real, char, string array, record

Write : digunakan untuk merekam satu atau lebih nilai ke dalam file

Read : digunakan untuk membaca atau lebih, nilai dari file

Seek : Digunkan untuk mengarahkan penunjuk file ke suatu komponen tertentu di dalam file

Trunccate : digunakan untuk menghapus sejumlah komponen atau record mulai dari posisi record tertentu

FileSize : digunakan untuk menghasilkan jumlah dari komponen atau record

Contoh Program Bertipe Input Data

Uses Crt;

Type MHS = Record

NM : string[15];

UTS,UAS : byte;

End;

Var FileMHS : File of MHS;

RecMHS : MHS;

No, Bts, JD, T, RN : Byte;

BEGIN

CLRSCR;

Write('Jumlah Data : '); ReadLn(JD);

Page 69: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Assign(FileMHS,'C:\MHS.DAT');

ReWrite(FileMHS);

For No := 1 To JD Do

Begin

With RecMHS Do

Begin

Write('Nama : '); ReadLn(NM);

Write('UTS : '); ReadLn(UTS);

Write('UAS : '); ReadLn(UAS);

End;

Write(FileMHS,RecMHS);

End;

Close(FileMHS);

ReadLn;

END.

Lalu disimpan

Contoh Program Bertipe Tampil Data

Uses Crt;

Procedure Judul;

Begin

WriteLn('DAFTAR NILAI MAHASISWA');

Page 70: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

WriteLn('--------------------------------------------------------------------');

WriteLn('No. Nama Mahasiswa UTS UAS Total Rata Predikat Kelulusan');

WriteLn('--------------------------------------------------------------------');

End;

Type MHS=Record

NM : string[15];

UTS,UAS : byte;

End;

Var FileMHS : File of MHS;

RecMHS : MHS;

No,Brs,JD,T,R,RN : byte;

P : string[10];

K : string[5];

BEGIN

CLRSCR;

Judul;

Assign(FileMHS,'C:\MHS.DAT');

Reset(FileMHS);

No:=0;

While Not EOF (FileMHS) Do

Begin

Page 71: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

With RecMHS Do

Begin

Read(FileMHS,RecMHS);

T:= UTS+UAS; R:= T div 2; inc(No);

Case R of

00..59 : P:='Kurang';

60..74 : P:='Cukup';

75..84 : P:='Baik';

85..100: P:='Amat Baik';

End;

WriteLn(No:3,' ',NM:15,' ',UTS:3,' ',UAS:3,' ',T:3,' ',R:3,' ',P:10,' ',K:5);

End;

End;

ReadLn;

Close(FileMHS);

END.

Pembahansan 14

PEMBUATAN UNIT BARU

Contoh Program Pembentukan Unitku

Page 72: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Unit Unitku;

Interface

Uses Crt;

Procedure Bersihkan;

Function Ls3(A,T:Integer):Real;

Implementation

Procedure Bersihkan;

Begin

Clrscr;

End;

Function Ls3(A,T:Integer):Real;

Begin

Ls3:=A*T/2;

End;

End

Lalu simpan

Contoh Program Pemakaian Unit Baru

Uses Unitku;

Var A,T :Integer;

Begin

Page 73: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Bersihkan;

Write('Nilai Alas :');Readln(A);

Write('Nilai Tinggi :');Readln(T);

Write('Luas Segitiga :',Ls3(A,T):5:1);

Readln;

End..

RESUME

TEKNIK PENCARIAN (SEARCHING) & TEKNIK

PENGURUTAN (SORTING)

 PENGERTIAN SEARCHING

 Searching (Pencarian Data) sering juga disebut table look-up atau

storage and retrieval information adalah suatu proses untuk

mengumpulkan sejumlah informasi di dalam pengingat komputer

dan kemudian mencari kembali informasi yang diperlukan secepat

mungkin.

 Tempat pencarian data dapat berupa array dalam memori, bisa juga

pada file pada external storage.

 METODE SEARCHING

Ada 2 Pengelompokkan Metode

Page 74: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

 1. Berdasarkan Tempat Pencarian

pencarian internal (internal searching)

pencarian eksternal (external searching)

 2. Berdasarkan Sifat Pencarian

Pencarian statis (static searching)

Pencarian Dinamis (dynamic searching)

 TEKNIK PENCARIAN

Pencarian Berurutan (Sequential Searching)

• Adalah suatu teknik pencarian data dalam array ( 1 dimensi ) yang

akan menelusuri semua elemen-elemen array dari awal sampai

akhir, dimana data-data tidak perlu diurutkan terlebih dahulu.

Pencarian Biner (Binary Search)

• Adalah teknik pencarian data dengan cara membagi data menjadi

dua bagian setiap kali terjadi proses pencarian.

 PENGERTIAN SORTING

Page 75: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

Pengurutan data (sorting) didefinisikan sebagai suatu proses untuk menyusun kembali humpunan obyek menggunakan aturan tertentu.

 METODE SORTING

 Metode pengurutan yang digunakan dapat diklasifikasikan menjadi

dua katagori yaitu :

• pengurutan internal, yaitu pengurutan dengan menggunakan larik

(array). Larik tersimpan dalam memori utama komputer

• pengurutan eksternal, yaitu pengurutan dengan menggunakan

berkas (sequential access file). Berkas tersimpan dalam pengingat luar,

misalnya cakram, atau pita magnetik).

 TEKNIK SORTING

 Pengurutan berdasarkan perbandingan (comparison –based sortisorting) : Bubble sort: Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya.

dan exchange sort : Exchange sort membandingkan suatu elemen dengan elemen-elemen lainnya dalam array tersebut, dan melakukan pertukaran elemen jika

Page 76: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

perlu. Jadi ada elemen yang selalu menjadi elemen pusat (pivot).

 Pengurutan berdasarkan prioritas (priority queue sorting method) : Selection sort : Merupakan kombinasi antara sorting dan searching

Untuk setiap proses, akan dicari elemen-elemen yang belum diurutkan yang memiliki nilai terkecil atau Terbesar akan dipertukarkan ke posisi yang tepat dalam array.

 dan Heap Sort : Algoritma heapsort tidak memerlukan rekursif yang besar atau, menggunakan banyak tabel (array).

 Pengurutan berdasarkan penyisipan dan penjagaan terurut (insert and keep sorted method) : Insertion sort : Mirip dengan cara orang Mengurutkan kartu, selembar demi selembar kartu diambil dan disisipkan (insert) ke tempat yang seharusnya.

dan Tree sort : Merupakan teknik pengurutan data yang terdiri dari root / akar sepohon yang tersusun secara hierarki (terkait) .

Page 77: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

 Pengurutan berdasarkan pembagian dan penguasaan ( devide and conquer method) : Quick sort :Quick

Sort mengurutkan menggunakan berbasiskan strategi Divide and

Conquer untuk membagiarray menjadi dua sub-array., Merge sort .

 Pengurutan berkurang menurun

(diminishing increment sort method) : Shell

sort (pengembangan

insertion) : Mengurutkan data dengan cara

membandingkan suatu data dengan data lain

yang memiliki jarak tertentu sehingga dibentuk

sub-list, kemudian dilakukan pertukaran jika

diperlukan.

contoh program

program diameter;

uses crt;

var

a:real;

begin

clrscr;

Page 78: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln('===MENGHITUNG DIAMETER LINGKARAN===');

writeln('');

write('masukan luas lingkaran =');readln(a);

writeln(' ');

writeln('===================================');

writeln('L = pi*r^2 ');

writeln( a:0:2, ' =',pi:0:2,' x r^2');

writeln( sqrt(a):0:2,' =',pi:0:2,' x r');

writeln( 'r =',pi:0:2,' x ',sqrt(a):0:2);

writeln( 'r =',(sqrt(a)/pi):0:2,'m');

writeln('');

writeln('===================================');

writeln('d = 2 x r');

writeln(' = ',2,' x ',(sqrt(a)/pi):0:2);

writeln(' = ',2*(sqrt(a)/pi):0:2,' m');

writeln('===================================');

readln;

Page 79: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

end.

program akar_pangkat;

uses crt;

var

x,y:real;

begin

clrscr;

writeln('===================================');

write('masukan angka 1 =');readln(x);

write('masukan angka 2 =');readln(y);

writeln('');

writeln('===================================');

writeln(' X = akar^n(m)');

writeln('LogX= Log akar^n(m)');

writeln(' = Log akar^',x:0:2,'(',y:0:2,')');

writeln(' = Log',y:0:2,'^1/',x:0:2);

writeln(' = 1/',x:0:0,' x Log',y:0:2);

Page 80: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln(' = 1/',x:0:0,' x ',ln(y)/ln(10):0:2);

writeln(' = ',1/x*ln(y)/ln(10):0:4);

writeln('===================================');

readln;

end.

program tugas1;

uses crt;

var

a,b:integer;

c,x:integer;

begin

clrscr;

writeln('===================================');

write('masukan a =');readln(a);

write('masukan b =');readln(b);

write('masukan c =');readln(c);

write('masukan x =');readln(x);

Page 81: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln('');

writeln('===================================');

writeln('Y= ax^2+bx+c');

writeln(' = ',a, ' x ' ,x,'^2+ ' ,b, ' x ' ,x,' + ',c);

writeln(' = ',a, ' x ' ,sqr(x), ' + ' ,b, ' x ' ,x,' + ',c);

writeln(' = ',a*sqr(x)+b*x+c);

writeln('===================================');

readln;

end.

program tugas2;

uses crt;

var

a,b,c:real;

begin

clrscr;

writeln('=========================================');

write('masukan a =');readln(a);

Page 82: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write('masukan b =');readln(b);

write('masukan c =');readln(c);

writeln('');

writeln('=========================================');

writeln('X =(-b +akar(b^2-4ac)/2a)');

writeln(' =(',(-1*b):0:0,'+akar(',sqr(b):0:0,'-',4,'x',a:0:0,'x',c:0:0,')/',2,'x',a,')');

writeln(' =(',(-1*b):0:0,'+akar(',(sqr(b)-4*a*c):0:2,')/',(2*a):0:2);

writeln(' =(',(-1*b):0:0,'+',sqrt(sqr(b)-(4*a*c)):0:2,'/',2*a,')');

writeln(' = ',((((-1*b)+sqrt(sqr(b)-4*a*c)/2*a))) :0:2);

writeln('=========================================');

readln;

end.

program tugas2;

uses crt;

var

a,b,c:integer;

tot:real;

Page 83: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

begin

clrscr;

writeln('=========================================');

write('masukan a =');readln(a);

write('masukan b =');readln(b);

write('masukan c =');readln(c);

writeln('');

tot:=(-1*b)+sqrt(sqr(b)-(4*a*c)/2*a);

writeln('=========================================');

writeln('X =(-b +akar(b^2-4ac)/2a)');

writeln(' =(',(-1*b),'+akar(',sqr(b),'-',4,'x',a,'x',c,')/',2,'x',a,')');

writeln(' =(',(-1*b),'+akar(',(sqr(b)-4*a*c),')/',(2*a));

writeln(' =(',(-1*b),'+',sqrt(sqr(b)-(4*a*c)):0:2,'/',2*a,')');

writeln(' = ',tot/(2*a) :0:4);

writeln('=========================================');

readln;

end.

Page 84: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

program tugas3;

uses crt;

var

a,b,c:integer;

tot:real;

begin

clrscr;

writeln('================================================');

write('masukan a =');readln(a);

write('masukan b =');readln(b);

write('masukan c =');readln(c);

writeln('');

tot:=((-1*b)-sqrt(sqr(b)-4*a*c))/2*a;

writeln('================================================');

writeln('X =-b -akar(b^2-4ac)/2a');

writeln(' =(',(-1*b),'-akar(',sqr(b),'-',4,'x',a,'x',c,')/',2,'x',a,')');

writeln(' =(',(-1*b),'-akar(',(sqr(b)-4*a*c),')/',2*a);

Page 85: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln(' =(',(-1*b),'-',sqrt(sqr(b)-(4*a*c)):0:2,'/',2*a,')');

writeln(' = ',tot/(2*a) :0:2);

writeln('================================================');

readln;

end.

program tugas4;

uses crt;

var

a,b:real;

begin

clrscr;

writeln('=======================================');

write('masukan bilangan 1 =');readln(a);

write('masukan bilangan 2 =');readln(b);

writeln('');

writeln('=======================================');

writeln('Y = sin(a + b)');

Page 86: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln(' = sin(sin(a)xcos(b) + sin(a)xsin(b)');

writeln(' = sin(',sin(a):0:2,'x',cos(b):0:2,' + ',sin(a):0:2,'x',sin(b):0:2,')');

writeln(' = sin(',sin(a)*cos(b)+sin(a)*sin(b):0:2,')');

writeln(' = ',sin(sin(a)*cos(b)+sin(a)*sin(b)):0:4 );

writeln('=======================================');

readln;

end.

program tugas5;

uses crt;

var

a,b:real;

begin

clrscr;

write('masukan bilangan 1 =');readln(a);

write('masukan bilangan 2 =');readln(b);

writeln(' ');

writeln('=================================');

Page 87: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln('Y = cos(a + b)');

writeln(' = cos(cos(a)xcos(b) + sin(a)xsin(b)');

writeln(' = cos(',cos(a):0:2,'x',cos(b):0:2,' + ',sin(a):0:2,'x',sin(b):0:2,')');

writeln(' = cos(',cos(a)*cos(b)+sin(a)*sin(b):0:2,')');

writeln(' = ',cos(cos(a)*cos(b)+sin(a)*sin(b)):0:4,')');

writeln('=================================');

readln;

end.

program tugas5;

uses crt;

var

x,m,b:integer;

begin

clrscr;

writeln('==============================');

write('masukan bil 1 =');readln(x);

write('masukan bil 2 =');readln(m);

Page 88: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write('masukan bil 3 =');readln(b);

writeln('');

writeln('==============================');

writeln('L = lim x->a (mx + b)');

writeln(' = lim x->',x,' (',m,'x',x,'+',b,')');

writeln(' = ' ,m*x+b);

writeln('==============================');

readln;

end.

program balok;

uses crt;

var

p,l,t:real;

begin

clrscr;

writeln('=======MENGHITUNG LUAS & VOLUME BALOK========');

writeln('');

Page 89: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

write('masukan panjang =');readln(p);

write('masukan lebar =');readln(l);

write('masukan tinggi =');readln(t);

writeln('');

writeln('===========================================');

writeln('maka Luas = 2(pxl)+2(pxt)+2(lxt)');

writeln(' = 2(',p:0:0,'x',l:0:0,')+2(',p:0:0,'x',t:0:0,')+2(',l:0:0,'x',t:0:0,')');

writeln(' = ',2*(p*l):0:0,'+',2*(p*t):0:0,'+',2*(l*t):0:0);

writeln(' = ',((2*(p*l))+(2*(p*t))+(2*(l*t))):0:2);

writeln('');

writeln('===========================================');

writeln('maka Volume = p x l x t ');

writeln(' = ',p:0:0,' x ',l:0:0,' x ',t:0:0);

writeln(' = ',(p*l*t):0:2);

writeln('===========================================');

readln;

end.

Page 90: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

program kubus;

uses crt;

var

s:real;

begin

clrscr;

writeln('======MENGHITUNG LUAS & VOLUME KUBUS======');

Writeln('');

write('masukan sisinya =');readln(s);

writeln('');

writeln('==========================================');

writeln('maka Luas = 6 (sisixsisi)');

writeln(' = 6 (',s:0:0,'x',s:0:0,')');

writeln(' = 6 x ' ,(s*s):0:0 );

writeln(' = ',(6*(s*s)):0:2);

writeln('');

writeln('==========================================');

Page 91: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln('maka Volume = sisixsisixsisi');

writeln(' = ',s:0:0,'x',s:0:0,'x',s:0:0);

writeln(' = ',(s*s*s):0:2);

writeln('==========================================');

readln;

program segitiga;

uses crt;

var

a,b,c:real;

begin

clrscr;

writeln('=======MENGHITUNG LUAS SEGITIGA========');

write('masukan alas =');readln(a);

write('masukan tinggi =');readln(b);

writeln('');

writeln(' L = 1/2 x (a + t)');

writeln(' = 1/2 x (',a:0:0,' + ',b:0:0,')');

Page 92: Web viewDeklarasi sub-program (PROCEDURE dan ... Statemen adalah perintah untuk pengerjaan program pascal.Statemen terletak di bagian deklarasi ... (’ DATA PENJUALAN

writeln(' = 1/2 x (',(a*b):0:0,')');

writeln(' = ',0.5*(a*b):0:2);

writeln('');

writeln('======MENGHITUNG KELILING SEGITIGA=====');

write('masukan a =');readln(a);

write('masukan b =');readln(b);

write('masukan c =');readln(c);

writeln('');

writeln(' K = a + b + c');

writeln(' = ',a:0:0,' + ',b:0:0,' + ',c:0:0);

writeln(' = ',(a+b+c):0:2);

readln;

end.