SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan...

29
1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari nama seorang ahli matematika Perancis yaitu Blaise Pascal (1623- 1662) (penemu mesin penjumlahan mekanis yang pertama kali). Turbo Pascal merupakan salah satu bahasa pemrograman tingkat tinggi yang masuk kategori bahasa pemograman terstruktur yaitu Bahasa pemrograman yang mendukung abtraksi data, pengkodean terstruktur, dan kontrol program terstruktur Bahasa Pemrograman Beraras Tinggi: bahasa pemrograman yang mudah dibuat dan dipahami oleh orang awam, dimana kode-kodenya tidak berorientasi pada bahasa mesin. Contoh: C dan C++ Fortran Cobol DASAR PASCAL Program adalah instruksi-instruksi yang diberikan kepada komputer agar komputer dapat melaksanakan tugs-tugas tertentu. Tahap-tahap penulisan program: a. Menulis program b. Menjalankan program untuk menguji kebenaran program c. Dalam penulisn logika ataupun kaidah, jika ada kesalahan maka program tersebut diperbaiki dan kembali ke langkah 2. Gambar Langkah Pemrograman Mulai Menulis Program Menjalankan Program Ada Kesalahan Selesai Memperbaiki Program Ya Tidak

Transcript of SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan...

Page 1: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

1

SEJARAH PASCAL

Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari nama seorang ahli matematika Perancis yaitu Blaise Pascal (1623-1662) (penemu mesin penjumlahan mekanis yang pertama kali).

Turbo Pascal merupakan salah satu bahasa pemrograman tingkat tinggi yang masuk kategori

bahasa pemograman terstruktur yaitu Bahasa pemrograman yang mendukung abtraksi data, pengkodean terstruktur, dan kontrol program terstruktur

Bahasa Pemrograman Beraras Tinggi: bahasa pemrograman yang mudah dibuat dan dipahami

oleh orang awam, dimana kode-kodenya tidak berorientasi pada bahasa mesin. Contoh: C dan C++ Fortran Cobol

DASAR PASCAL

Program adalah instruksi-instruksi yang diberikan kepada komputer agar komputer dapat melaksanakan tugs-tugas tertentu. Tahap-tahap penulisan program: a. Menulis program b. Menjalankan program untuk menguji kebenaran program c. Dalam penulisn logika ataupun kaidah, jika ada kesalahan maka program tersebut diperbaiki

dan kembali ke langkah 2.

Gambar Langkah Pemrograman

Mulai

Menulis Program

Menjalankan Program

Ada Kesalahan

Selesai

Memperbaiki Program Ya

Tidak

Page 2: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

2

Langkah pemrograman dimulai dengan menuliskan program, setelah program ditulis dilakukan pengujian / menjalankan program, jika dalam menjalankan program terdapat kesalahan maka program tersebut diperbaiki kembali sampai tidak ada kesalahan dan jika program sudah valid atau tidak ada kesalahan maka program tersebut dikatakan selesai atau sukses.

Diagram alir berfungsi untuk alat bantu membuat program dan untuk kepentingan pendokumentasian.

Problem Jenis diagram alir ada 2: diagram alir program dan diagram alir sistem

Diagram Alir program : gambar yang menjelaskan urutan:

Pembacaan data Pemrosesan data Pengambilan keputusan terhadap data Penyajian hasil pemrosesan data

Diagram alir sistem: gambar yang menjelaskan :

File-file yang diproses oleh program Jenis piranti yang digunakan oleh file Operasi terhadap file (masukan maupun keluaran)

Mengaktifkan editor turbo pascal

Turbo Pascal menyediakan fasilitas editor TURBO PASCAL yang memberikan pelayanan terpadu antara editor dan compiler. Turbo Pascal dapat diaktifkan dari prompt C (dapat menyesuaikan) dengan mengetikkan:

C:>TURBO<Enter> File Edit Search Run Compile Debug Tools Options Window Help ╔═[■]════════════════════════════ NONAME00.PAS ║ ▲ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▓ ║ ▼ ╚═══════ 1:1 ═════◄■▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒►─┘ F1 Help F2 Save F3 Open Alt+F9 Compile F9 Make Alt+F10 Local menu

Diagram Alir Program Sumber

Page 3: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

3

Menu-menu

1. Menu File Load (F3) membuka program Pick (Alt+F3) membuka salah satu diantara program yang diedit. New membuka program baru Quit (Alt+X) keluar dari editor

2. Menu Edit (Alt+E): berhubungan dengan penyuntingan/ edit program 3. Menu Search: mencari dan mengganti teks 4. Menu Run (Alt+R) mengeksekusi program (Ctrl+F9) 5. Menu CompileMenu Options (Alt+F9): untuk mengkompilasi program 6. Menu Debug: pencarian kesalahan 7. Menu Tools: menampilkan jendela kesalahan 8. Menu Options 9. Menu Windows:menutup jendelea yangs edang aktif, memperbesar ukuran jendela,

memilih jendela aktif 10. Menu Help: bantuan untuk memperoleh informasi tentang Turbo Pascal

Aktifitas dalam pembuatan Program:

1. Menulis Program: tekan Alt+F atau tekan N (New) 2. Mengedit program: Tekan F3 3. Mengkompilasi Program: tekan Alt+C 4. Menjalankan program: tekan Alt+R atau F9 5. Melihat hasil pogram: tekan Ctrl+F9 6. Memperbaiki program: memberitahu kesalahan sintaks atau penulisan program, setelah

diperbaiki kemudian program di-compile kembali 7. Menyimpan Program: tekan F2

Struktur Program Pascal 1. Kepala Program

Bentuk umumnya: PROGRAM nama;

Syarat penulisannya Sesudah nama konstanta, harus diakhiri tanda titik koma ( ; ) Kata PROGRAM merupakan kata tercadang, yaitu mempunyai makna khusus dalam

Turbo Pascal. Nama konstanta di definisikan sendiri oleh pemrogram untuk mengidentifikasi

program yang dibuat

2. Bagian Deklarasi Bentuk umumnya:

PROGRAM <StructureSample>; LABEL <LabelDeclaration>; CONST <ConstantDeclarations>; VAR < VariableDeclarations>; PROCEDURE/FUNCTION <Example>; BEGIN

Page 4: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

4

<BodyProcedureFunction>; END; BEGIN <MainBodyProgram>; END.

3. Bagian Pernyataan

Bentuk umumnya: BEGIN

Pernyataan; … Pernyataan

END. Komentar adalah tulisan pada program, yang tidak berarti apa-apa bagi komputer, tetapi sangat

berguna bagi orang karena berfungsi sebagai dokumentasi. Aturannya: 1. sepasang tanda (* *) boleh berada didalam sepasang tanda {} 2. sepasang tanda {}bole berada di dalam sepasang tanda (* *) 3. tanda (* *) tidak boleh berpotongan

Dasar Turbo Pascal

Karakter {elemen terkecil pada Turbo Pascal) dan simbol meliputi: Spasi / kosong: Karakter : a,b,c,…,z,A,B,C,…,Z Karakter ASCII : karakter dengan kode ASCII di bawah dan diats 127 Simbol 1 karakter : + - * / = < > [] {} , . ; : ^ @ $ # () Simbol 2 karakter : <= >= := (* *)<> Angka desimal : 0,1,2,3,4,5,6,7,8,9,10,… Angka heksadesimal : 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,…

Page 5: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

5

ELEMEN DASAR TURBO PASCAL

Karakter adalah elemen terkecil pada Turbo Pascal. Karakter dapat berupa: 1. Huruf (A sampai dengan Z, a sampai dengan z) 2. Angka (0 sampai dengan 9) 3. Simbol khusus satu karakter ( + - * / = , . [ ] . , ( ) ; : ^ @ { } )

Simbol khusus dua karakter:

Simbol Keterangan <= Operator relasi >= Operator relasi := Operator penugasan <> Operator relasi (* Tanda awal komentar *) Tanda akhir komentar (. Identik dengan [ .) Identik dengan ] .. Tanda subjangkauan

4. Spasi ( ) 5. Karakter kontrol (karakter dengan nilai ASCII di bawah 32, misalnya Tab dan Backspace) 6. Karakter ASCII (American Standard Code for Information Interchange atau American

Standard Comittee on Information Interchange) tidak standar pada PC (karakter dengan nilai ASCII antara 128 hingga 255)

Reserved Word (Kata Tercadang): kata baku yang telah disediakan oleh Turbo Pascal dan

memiliki arti khusus. Antara lain: absolute Do Forward interface or and Downto Function interupt packed array Else Goto label procedure begin End If mod program case External implementation nil record const File In not repeat div For in line of set shl Type While then var shr Unit With uses to string Until Xor

Catatan: penulisan reserved word atau lata tercadang dapat menggunakan huruf kecil atau kapital.

Pengenal / identife digunakan untuk memberi nama program, unit, prosedur, label, fungsi, konstanta, atau variabel. Syarat pengenal/ identifier adalah: Karakter pertama dimulai dengan huruf Tidak mengandung spasi/ blank Tidak boleh ada simbol khusus Tidak boleh sama dengan reserved word Setelah karakter pertama dapat berupa angka, huruf, atau underscore Panjang tidak dibatasi, hanya 63 karakter yang dibedakan

Page 6: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

6

Penggunaan huruf kecil atau huruf kapital dianggap sama Ex: yang benar: Semester_1 (identik dengan : SEMESTER_1) N HargaBarang Ex: yang salah: Semester 1 (salah karena ada spasi) 12bulan (salah karena diawali dengan angka) Bulan-2 (salah karena ada tanda minus)

Konstanta / Const, merupakan nilai yang tetap selama program dijalankan, yang dapat berupa karakter atau angka. Contoh program menggunakan Constanta program konstanta; uses crt; const nama='Budi'; Berat='54'; tinggi='156'; begin writeln('nama:',nama); writeln('berat:',berat); writeln('tinggi:',tinggi); readln; end.

Data, macam dan pengelompokan tipe data dalam Turbo Pascal

ordinal Integer=data bilangan bulat Shortint Longint Sederhana Boolean Char=sebuah karakter Byte Subrange String Enumerated / terbilang real Tipe data Larik / array Terstruktur Rekaman Himpunan (set) Berkas (file) Pointer

Page 7: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

7

Ungkapan/ ekspresi digunakan untuk menyatakan pemberian nilai atau menuliskan rumus.

Umumnya ungkapan tersusun atas operand dan operator Contoh: 10 + 2 – 3 ungkapan / ekspresi tanda + dan – disebut operator angka 10 2 3 disebut operand

Macam operator yang dapat digunakan Aritmatika, terdiri atas:

Operator binary : + - / * DIV MOD Operator unary : + (plus) dan – (minus) Prioritas : + (plus) dan – (minus) prioritas tertinggi / * DIV MOD prioritas menengah + - prioritas terendah Tabel operator matematika:

Operator Arti Prioritas Contoh * Kali 1 2*3 6 / Bagi (real) 1 7/2 3.5

DIV Bagi (bulat) 1 7 div 2 3 MOD Sisa pembagian 1 7 mod 2 1

+ Tambah 2 2 + 3 5 - Kurang 2 2 – 3 -1

Contoh program menggunakan Operasi Matematik Program hitungan_1; uses wincrt; var A,B,C:integer; F,Q,L:real; Z:string; begin A:=10; B:=2; C:=A div B; F:=100.5; Q:=5.5; L:=F + Q; Z:='soni'; writeln('isi A= ',A); writeln('isi B= ',B); writeln('isi C= ',C); writeln('isi F=',F);

Page 8: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

8

writeln('isi Q=',Q); writeln('isi L=',L); writeln('isi Z= ',Z); readln; end.

Boolean (True False), terdiri atas: AND, OR, NOT, XOR Tabel kebenaran hasil dari operator boolean:

Operand 1 Operand 2 Hasil operasi AND OR XOR

FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE FALSE

Contoh Program menggunakan konstanta boolean uses wincrt; const benar=true; salah=false; begin writeln('nilai benar=',benar); writeln('nilai salah=',salah); writeln('true and true=',benar and benar); readln; end.

Relasional, terdiri atas =, >, <, >=, <=, <> Concate / penggabungan

Khusus untuk tipe data string, operator + berarti menggabung 2 string Contoh: ‘AR’ + ‘UM’ akan menghasilkan string ‘ARUM’

Contoh program menggunakan string program identitas_diri; uses wincrt; var namaAnda:string[10]; begin clrscr; write('Nama Anda?'); readln(namaanda); write('Nama Anda=',namaanda,'!'); readln; end.

Page 9: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

9

Page 10: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

10

TIPE DASAR

INTEGER: terdiri dari bilangan bulat dalam rentang tertentu Operator Integer Operator Arti + Penjumlahan - Pengurangan * Perkalian DIV Division, hasil pembagian bulat MOD Modulo, sisa pembagian REAL: terdiri dari bilangan pecahan dalam rentang tertentu Operator Arti + Penjumlahan - Pengurangan * Perkalian / pembagian BOOLEAN:Terdiri dari dua harga yaitu TRUE dan FALSE. Ekspresi TRUe dan FALSE disebut ekspresi Boolean. Terdapat dua jenis operator yang dapat digunakan dalam ekspresi Boolean, yaitu Operator Boolean dan Operator Relasional Operator Boolean terdiri dari AND, OR, XOR dan NOT

Operator relasional Operator Arti

= Sama dengan < Kurang dari > Lebih dari

<= kurang dari sama dengan >= Lebihd ari sama dengan := Operator penugasan <> Tidak sama dengan

Operand 1 Operand 2 Hasil operasi AND OR XOR NOT Operand 1

FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE

Page 11: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

11

PERNYATAAN BERSTUKTUR/ MAJEMUK 1. Pernyataan majemuk adalah kumpulan beberapa pernyataan yg diawali dengan Begin dan

diakhiri dengan pernyataan End. 2. Pernyataan Bersyarat (If Then, If Then Else, If Then Else If, Case Of)

A. If Then Pernyataan bersyarat akan dilaksanakan jika syarat terpenuhi (bernilai True) Ada 2 sintaks untuk pernyataan If Then Sintaks 1 If SyaratLogika Then Pernyataan; Sintaks 2 If SyaratLogika Then Begin Pernyataan1;

Pernyataan2; ……………; PernyataanN;

End;

SyaratLogika adalah operasi relasi yang apabila syarat logika terpenuhi (True), maka pernyataan atau blok pernyataan setelah Then akan dilakasanakan. Apabila syarat kondisi logika tidak terpenuhi (bernilai False), maka pernyataan atau blok pernyataan tidak akan dikerjakan Contoh 1 Program Bersyarat IF THEN program derajat_celcius; uses wincrt; var suhu:real; begin write('suhu tubuh:'); readln(suhu); if suhu > 37 then writeln ('SUHU TINGGI') end. Contoh 2 Program Bersyarat IF THEN PROGRAM KELULUSAN NILAI; USES CRT VAR NAMA :STRING [10]; NILAI:REAL KET:STRING[20];

Page 12: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

12

BEGIN CLRSCR; WRITE ('NAMA SISWA='); READ(nama; WRITE('NILAI ANGKA='); READln(nilai); KET:=ANDA TIDAK LULUS'; IF (NILAI>55) THEN KET:='ANDA LULUS'; write; WRITELN('HASIL=',KET); READln; END. Contoh 3 Program Bersyarat IF THEN Program pernyataan_if_then; uses wincrt; var nilai:integer; siswa,ket:string; P:char; begin writeln('masukkan nama siswa='); readln(siswa); writeln('masukkan nilai ujian=;); readln(nilai); if nilai >=85 then P:='A'; if nilai >=75 then P:='B'; if nilai >=60 then P:='C'; if nilai >=50 then P:='D'; if nilai <50 then P:='E'; writeln('nama siswa=',siswa, 'Nilainya=',p) readln; end. Latihan: jalankan program dengan input nilai= 86,78,64,56,40 Contoh 4 Program Menggunakan If Then Program pernyataan_if_then; uses wincrt; var nilai:integer; siswa,ket:string; P:char; begin writeln('masukkan nama siswa='); readln(siswa); writeln('masukkan nilai ujian=;);

Page 13: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

13

readln(nilai); if (nilai<=100) and (nilai>=85) then P:='A'; if (nilai<85) and (nilai>=75) then P:='B'; if (nilai<75) and (nilai>=60) then P:='C'; if (nilai<60) and (nilai>=50) then P:='D'; if (nilai<50) and (nilai>=0) then P:='E'; writeln('nama siswa=',siswa, 'Nilainya=',p) readln; end.

B. If Then Else Mirip dengan pernyataan If Then. Ada 2 sintaks untuk pernyataan If Then Else Sintaks 1 If SyaratLogika Then;

Pernyataan1; Else Pernyataan2;

Sintaks 2 If SyaratLogika Then

Begin Pernyataan1;

Pernyataan2; ……………;

End {tanpa tanda titik koma} Else Begin

PernyataanA; PernyataanB; ……………;

End;

SyaratLogika apabila syarat logika terpenuhi (True), maka pernyataan atau blok pernyataan setelah Then akan dilaksanakan. Apabila syarat kondisi logika tidak terpenuhi (bernilai False), maka pernyataan atau blok pernyataan setelah Else yang akan dikerjakan. Contoh 1 Program Bersyarat IF THEN ELSE Program pernyataan_if_then; uses wincrt; var nilai:integer; siswa,ket:string; P:char; begin writeln('masukkan nama siswa='); readln(siswa); writeln('masukkan nilai ujian=;); readln(nilai); if nilai >=85 then P:='A' else

Page 14: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

14

if nilai >=75 then P:='B'else if nilai >=60 then P:='C'else if nilai >=50 then P:='D'else if nilai <50 then P:='E'; writeln('nama siswa=',siswa, 'Nilainya=',p) readln; end. Contoh 2 Program Bersyarat IF THEN ELSE Program kelulusan; Var Nama:integer[20]; Nilai:real; Ket, Pesan:string[30]; Begin write('Nama Siswa:'); readln(Nama); write('Nilai Angka'); readln(Nilai); Ket:='Aduh Sayang Sekali, Anda Tidak Lulus...'; Pesan:='Ulangi Tahun depan Yach!'; If (Nilai > 55) Then Begin Ket='Horeee Anda Lulus!!!!'; Pesan:='Selamat Ya..makan-makannya mana dong!'; End Else Begin Ket:='Anda Tidak Lulus Tuh...'; Pesan:='Belajar Yang Giat LAgi Yo!!!’ End writeln; write('Hasil:'); writeln(Ket,'',Pesan) readln; End.

C. If Then Else If If Then Else If sebenarnya merupakan pernyataan bersyarat dalam pernyataan bersyarat yang lain. Ada 2 sintaks untuk pernyataan If Then Else If Sintaks 1 If SyaratLogika Then;

Pernyataan1 Else If SyaratLogika Then Pernyataan2 Else Pernyataan3;

Page 15: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

15

Sintaks 2 If SyaratLogika Then

Begin Pernyataan1;

Pernyataan2; ……………;

End Else If SyaratLogika Then Begin

Pernyataan21; Pernyataan22; ……………;

End Else Begin Pernyataan31;

Pernyataan32; ……………;

End; SyaratLogika terpenuhi (bernilai True), maka pernyataan atau blok pernyataan setelah Then akan dilaksanakan. Apabila syarat kondisi logika tidak terpenuhi (bernilai False) maka program akan mengecek kondisi kedua, jika kondisi kedua bernilaiTrue, maka pernyataan atau blok pernyataan setelah Then akan dikerjakan. Jika kondisi kedua bernilai False, maka pernyataan atau blok pernyataan setelah False akan dikerjakan. Contoh Program Bersyarat IF THEN ELSE IF PROGRAM NILAI; USES CRT; VAR NAMA: STRING[15]; NILAIANGKA:REAL; NILAIHURUF:CHAR; BEGIN CLRSCR; WRITE('NAMA SISWA:'); READLN(NAMA); WRITE('NILAI ANGKA='); READLN(NILAIANGKA); IF (NILAIANGKA>=75) THEN NILAIHURUF='A' ELSE IF (NILAIANGKA>=50) AND (NILAI ANGKA<75) THEN NILAIHURUF:='B' ELSE NILAI HURUF:='C'; WRITELN('NILAI HURUF=',NILAIHURUF); READLN;

Page 16: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

16

END.

D. Case Of Pernyataan Case of dipakai untuk seleksi ganda. Misal untuk membuat menu pilihan atau pilihan proses. Sintaks: Case NamaVar Of Pernyataan1;

Pernyataan2; ……………;

End; Nama Var dalam hal ini adalah sebuah variabel yang harus bertipe ordinal seperti char, byte atau integer. Contoh 1 program case of. program pernyataan_case_of; uses wincrt; var nilai:integer; nama:string; begin writeln('mencoba pernyataan case of'); writeln; writeln('masukkan nama anda:'); readln(nama); write('masukkan nilai 1-10'); readln(nilai); case nilai of 1 : writeln('anda menekan angka satu:'); 2 : writeln('anda menekan angka dua:'); 3 : writeln('anda menekan angka tiga:'); 4 : writeln('anda menekan angka empat:'); 5 : writeln('anda menekan angka lima:'); 6 : writeln('anda menekan angka enam:'); 7 : writeln('anda menekan angka tujuh:'); 8 : writeln('anda menekan angka delapan:'); 9 : writeln('anda menekan angka sembilan:'); 10 : writeln('anda menekan angka sepuluh:'); end; readln end.

Page 17: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

17

Contoh 2 program case of program pernyataancaseof; uses wincrt; var nilai:char; nama:string; begin writeln('mencoba pernyataan case of'); writeln; writeln('masukkan nama anda:'); readln(nama); write('masukkan nilai A...E'); readln(nilai); case nilai of A : writeln('anda menekan angka A:'); B : writeln('anda menekan angka B:'); C : writeln('anda menekan angka C:'); D : writeln('anda menekan angka D:'); E : writeln('anda menekan angka E:'); end; readln end. Contoh 3 pogram case of Program Nilai; uses wincrt; var nilai: integer; nama:string; begin writeln('mencoba pernyataan case of'); writeln; writeln('masukkan nama anda:'); readln(nama); write('masukkan nilai 0-100 (nilai bilangan bulat)'); readln(nilai); case nilai of 85..100 begin writeln ('nama anda=',nama); writeln ('mendapat nilai:A'); 75..84 begin writeln ('nama anda=',nama); writeln ('mendapat nilai:B'); 60..74 begin writeln ('nama anda=',nama); writeln ('mendapat nilai:C'); 50...59 begin writeln ('nama anda=',nama); writeln ('mendapat nilai:D');

Page 18: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

18

0..49 begin writeln ('nama anda=',nama); writeln ('mendapat nilai:E'); end; end; readln end. Contoh 4 Program Case Of Menentukan Hitungan Geometri

Program caseof; uses crt; label pilihan; var pilih: char; P,L,Luas_SE: integer; A,T,Jari,Luas_ST,Luas_L,Keliling_L,Volume_Bola:real; begin

pilihan: clrscr; writeln('-----------------------'); writeln ( 'PILIHAN PROSES'); writeln('-----------------------'); writeln ('1. Luas Segi Empat'); writeln ('2. Luas Segi Tiga'); writeln ('3. Luas Lingkaran'); writeln ('4. Keliling Lingkaran'); writeln ('5. Volume Bola'); writeln ('6. Selesai'); writeln('-----------------------'); write('Masukkan Pilihan Anda:'); readln(pilih); case pilih of '1': begin write('Panjang:'); readln(P); write('Lebar:'); readln(L); Luas_SE:=P*L; write('Luas Segi Empat:',Luas_SE); readln(pilih); end; '2': begin write('Alas:'); readln(A); write('Tinggi:'); readln(T); Luas_ST:=0.5*A*T; write('Luas:',Luas_ST:6:2); readln(pilih); end;

Page 19: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

19

'3': begin write('Jari-jari:'); readln(Jari); Luas_L:=3.14*Jari*Jari; write('Luas:', Luas_L:6:2); readln(pilih); end; '4': begin write('Jari-jari:'); readln(Jari); Keliling_L:=3.14*2*Jari; write ('Keliling Lingkaran:',Keliling_L:6:2); readln(pilih); end; '5': begin write('Jari_Jari:'); readln(Jari); Volume_Bola:=4/3*3.14*Jari*Jari*Jari; write('Volume Bola:',Volume_Bola:6:2); readln(pilih); end; '6':halt; end; write('S E L E S A I . . . . .'); goto pilihan; end. Output: ----------------------- PILIHAN PROSES ----------------------- 1. Luas Segi Empat 2. Luas Segi Tiga 3. Luas Lingkaran 4. Keliling Lingkaran 5. Volume Bola 6. Selesai ----------------------- Masukkan Pilihan Anda:2 Alas:5 Tinggi:7 Luas: 17.50

3. Pernyataan Pengulangan (For To Do, For Downto Do, While Do, Repeat Until) A. For To Do dan For Downto Do

For To Do digunakan untuk mengulang proses dengan cacah perulangan tertentu, artinya pernyataan (tunggal atau majemuk) akan dikerjakan secara berulang sebanyak N kali, dimana nilai N telah diketahui sebelumnya. Sintaks 1 For NamaVarCounter:= Awal To Akhir Do

Page 20: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

20

Pernyataan; Sintaks 2 For NamaVarCounter:= Awal To Akhir Do

Begin Pernyataan1; Pernyataan2; ……………; End; Dalam bentuk ini pernyataan atau blok pernyataan akan dikerjakan sebanyak Akhir dikurangi Awal. Nilai NamaVarCounter pertama kali akan sama dengan nilai dalam variabel Awal. Selanjutnya NamaVarCounter akan bertambah satu pada setiap kali selesai dilaksanakan satu kali perulangan. Akhirnya prose perulangan akan dihentikan setelah NamaVarCounter lebih dari nilai pada variabel Akhir. Contoh 1 program for to do Program for_to_do; uses wincrt; var i:integer; begin for i:=1 to 5 do writeln('SMA 3'); writeln('Yogyakarta'); writeln('never ending Asia'); readln; end contoh 2 program for to do Program for_to_do; uses wincrt; var i:integer; begin for i:=1 to 5 do begin writeln('SMA 3'); writeln('Yogyakarta'); writeln('i=',i); writeln('never ending Asia'); end; readln; end.

ForDown To Do

Page 21: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

21

Sintaks 1 For NamaVarCounter:= Awal Downto Akhir Do Pernyataan; Sintaks 2 For NamaVarCounter:= Awal Downto Akhir Do

Begin Pernyataan1; Pernyataan2; ……………; End; Catatan:

Jika Awal < Akhir digunakan perintah For To Do Jika Awal > Akhir digunakan perintah For Downto Do

Contoh Program For Downto Do Program fordowntodo; uses wincrt; var i:integer; begin for i:=8 downto 1 do begin writeln('i=',i); writeln('SMA 3'); writeln('Yogyakarta'); writeln('never ending Asia'); end; writeln('i=',i); readln; end.

B. While Do Pernyataan While Do biasanya dipakai untuk melakukan pengulangan yang jumlahnya tidak diketahui sebelumnya. While do mengeksekusi pernyataan lain selama beberapa kondisi bernilai true. Sintaks 1 While SyaratLogika Do Pernyataan; Sintaks 2 While SyaratLogika Do Begin Pernyataan1;

Page 22: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

22

Pernyataan2; ……………; End; Selama SyaratLogika terpenuhi (bernilai True), maka pernyataan atau blok pernyataan akan terus menurs diekrjakan, dan baru akan berhenti dikerjakan jika SyaratLogika tidak lagi terpenuhi (bernilai False). Contoh Program Menggunakan WhileDo Program Putaran_while_do; uses wincrt; var k:integer; begin K:=0; While k<10 do writeln('Malam Minggu'); K:=K+1; Writeln('Hayo ke Bioskop'); writeln('Atrium 21'); readln; end.\ Catatan: Untuk menghentikan proses berulang secara terus menerus tekan Ctrl+Break pada Keyboard. Contoh 2 Program While Do Program Putaran_while_do; uses wincrt; var k:integer; begin K:=0; While k<10 do begin writeln('Malam Minggu'); K:=K+1; end; Writeln('Hayo ke Bioskop'); writeln('Atrium 21'); readln; end. Soal: 1. Jalankan progam tersebut: Berapa kali kata Malam Minggu, Hayo ke Bisokop dan Atrium 21 tercetak? 2. buatlah program dari output berikut ini:

Page 23: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

23

C. Repeat Until Mirip dengan While Do,dimana setiap pernyataan perulangan dengan For To Do dapat diubah menjadi pernyataan menggunakan Repeat Until. Sintaks 1

Repeat Pernyataan;

Until SyaratLogika; Sintaks 2

Repeat Pernyataan1; Pernyataan2; ……………; Until SyaratLogika;

Pernyataan atau blok pernyataan akan terus menerus dikerjakan selama SyaratLogika terpenuhi (bernilai True)

Contoh 1 Program menggunakan repeat until

Program Putaran_repeat_until; uses wincrt; var k:integer; begin K:=0; Repeat writeln('Ada Pameran'); K:=K+1; until k>8; Writeln('Hayo liat pameran');

Page 24: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

24

writeln('di JEC'); readln; end.

Page 25: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

25

LARIK (ARRAY) Array adalah sebuah struktur data yang terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu variabel). Contoh:

Type A=array [1..10] of integer; Definisi array diatas dapat diilustrasikan sbb:

A1 A2 A3 AN Data A ke-1 Data A ke-2 Data A ke-3 … Data A ke-N

Secara logika pendefinisan array diatas merupakan suatu kotak, dimana setiap kotak mempunyai nilai indeks integer 1,2,3,…,N setiap elemen array ditandai dengan: A[1],A[2],A[3],…,A[N] Sifat array merupakan struktur data yang statis, yaitu jumlah elemen yang ada harus ditentukan terlebih dahulu dan tak bisa diubah saat program berjalan.. untuk menyatakan dalam PASCAL, yang harus dilakukan adalah:

1. mendefinisikan jumlah elemen array 2. mendefiniskan tipe data dari elemen array

contoh: const N=10;

type A=array [1…N] of integer;

Contoh program menggunakan Array dengan tipe integer program array_tipe_integer_tipe_index_integer;

uses wincrt; var A:array[1..10] of integer; n,i:integer; begin n:=0; for i:=1 to 10 do begin a[i]:=n; n:=n+1 end; writeln('I A[I]'); for i:=1 to 10 do writeln(' ',i:2,' ',a[i]); readln; end.

Page 26: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

26

A. Array Satu Dimensi (penjelasan sama dengan diatas). Intinya jika ingin membuat beberapa array dengan tipe/ jenis yang sama, lebih baik mendeklarasikan dengan type selanjutnya dengan deklarasi var. Sintaks:

Type nama_array=ARRAY [bawah…atas] of tipe_data; Var variabel_array:nama_array;

Atau dengan menggunakan pernyataan var; Var variabel_array:ARRAY[bawah…atas] of tipe_data;

Keterangan: Bawah dan atas menyatakan batas untuk array. Tipe_data adalah merupakan tipe variabel yang dipunyai array (misal:Integer, char, real, dsb). Contoh:

Type intarray=ARRAY [1..20] of integer;

B. Array Multidimensi Dalam array multidimensi terdiri atas baris (row) dan kolom (column). Indeks pertama adalah baris dan kedua adalah kolom. Sintaks

Type nama-array=ARRAY[bawah..atas, bawah..atas] of tipe_data; Var variabel_array:nama_array;

Atau dengan menggunakan pernyataan var; Sintaks

Type matriks=ARRAY [1..10, 1..10] of integer; Var AKU: matriks

Page 27: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

27

PROSEDUR DAN FUNGSI Procedure atau Function merupakan modul tersendiri atau program terpisah dalam blok tersendiri, fungsinya sebagai sub program (program bagian). Procedure atau Function dibuat untuk menyelesaikan suatu tugas spesifik, artinya hanya perlu dituliskan sekali dan dapat digunakan berulang kali di bagian manapun dalam program. Prosedure / Procedure

Merupakan sub program yang dapat dipanggil dalam program ataupun sub program lainnya, dan berdiri sebagai sebuah pernyataan. Prosedure diawali dengan kata Procedure. Bentuk deklarasi Prosedure: Procedure NamaProsedur (var parameter: tipedata); Keterangan NamaProsedur : nama prosedur Parameter : daftar parameter formal, tidak harus ada Contoh : Contoh program unt menghitung luas lingkaran dengan menggunakan prosedur. Prosedur yang digunakan adalah judul, input, cetak, dan tahan_tampilan. Program prosedur; Uses crt; Var R,Luas:real; Procedure judul; Begin Clrscr; Writeln(‘Menghitung Luas Lingkaran dengan Prosedur’); Writeln(‘--------------------------------------------------------’); End; Procedure input; Begin

Write(‘Masukkan jari-jari=’); Readln(R); Writeln;

End; Procedure cetak; Begin Writeln(‘jari-jari=’,R:4:1); Writeln(‘Luas Lingkaran=’,Luas(r):4:1); Writeln; End;

Page 28: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

28

Procedure tahan_tampilan; Begin Writeln(‘Selesai…..’);

Readln; End; Begin {Ini Program Utama lho!!!}

judul; input; Luas:=3.14*R*R; cetak; tahan_tampilan;

End.

Fungsi / Function Hampir sama dengan blok prosedur, hanya harus dideklarasikan dengan tipe datanya. Tipe data yang dideklarasikan tersebut menunjukkan tipe data hasil dari fungsi. Tipe tersebut dituliskan pada akhir deklarasi fungsi yang didahului dengan titik koma (;). Deklarasi fungsi: Function NamaFungsi (parameter): Tipedata; Keterangan: Namafungsi : nama fungsi Parameter : daftar parameter formal Contoh: Contoh program menghitung luas lingkaran dengan menggunakan fungsi. Nama fungsi yang digunakan adalah luas. Program fungsi; Uses crt; Var R: real; Function Luas (r:real):real; {fungsi} Begin

Luas:=3.14*R*R; End; Begin {Program Utama} Clrscr; Writeln(‘Menghitung Lingkaran dengan Fungsi’);

Writeln(‘-----------------------------------------------’); Write(‘Masukkan jari-jari=’); Readln(R); Writeln; Writeln(‘jari-jari=’,R:4:1); Writeln(‘jari-jari=’,Luas (R):4:1); Writeln; Writeln(‘Selesai….’);

Page 29: SEJARAH PASCAL - halodian.files.wordpress.com · 1 SEJARAH PASCAL Bahasa Turbo Pascal dikembangkan oleh Niklaus Wirth, bahasa Turbo Pascal berawal dari bahasa Perancis, diambil dari

29

Readln; End.

Contoh: Contoh program, menghitung luas lingkaran dengan melibatkan fungsi dan prosedur sekaligus. Program luas_lkr; Uses crt; Var R:real; Function luas(R:real):real; {fungsi} Begin

Luas:=3.14*R*R; End; Procedure judul; Begin

Clrscr; Writeln(‘Menghitung Luas Lingkaran dengan Prosedur dan Fungsi’); Writeln(‘---------------------------------------------------------------------’);

End; Procedure input; Begin Write(‘Masukkan jari-jari=’,R:4:1);

Writeln(‘Luas Lingkaran=’,R:4:1); Writeln;

End; Procedure tahan_tampilan; Begin Writeln(‘Selesai……….’);

Readln; End; Begin {Program Utama Lho!!!} judul;

input; luas(R); cetak; tahan_tampilan;

End.