devyestu.files.wordpress.com viewmerupakan salah satu bahasa pemrograman tingkat tinggi yang masuk...
Embed Size (px)
TRANSCRIPT

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++FortranCobol
DASAR PASCAL
Program adalah instruksi-instruksi yang diberikan kepada komputer agar komputer dapat melaksanakan tugs-tugas tertentu.Tahap-tahap penulisan program:a. Menulis programb. Menjalankan program untuk menguji kebenaran programc. Dalam penulisn logika ataupun kaidah, jika ada kesalahan maka program tersebut diperbaiki
dan kembali ke langkah 2.
Gambar Langkah Pemrograman
1
Mulai
Menulis Program
Menjalankan Program
Ada Kesalahan
Selesai
Memperbaiki Program Ya
Tidak

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
2
Diagram Alir Program Sumber

Menu-menu 1. Menu File
Load (F3) membuka program Pick (Alt+F3) membuka salah satu diantara program yang diedit. New membuka program baruQuit (Alt+X) keluar dari editor
2. Menu Edit (Alt+E): berhubungan dengan penyuntingan/ edit program3. Menu Search: mencari dan mengganti teks4. Menu Run (Alt+R) mengeksekusi program (Ctrl+F9)5. Menu CompileMenu Options (Alt+F9): untuk mengkompilasi program6. Menu Debug: pencarian kesalahan7. Menu Tools: menampilkan jendela kesalahan8. Menu Options9. Menu Windows:menutup jendelea yangs edang aktif, memperbesar ukuran jendela,
memilih jendela aktif10. 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 F33. Mengkompilasi Program: tekan Alt+C4. Menjalankan program: tekan Alt+R atau F95. Melihat hasil pogram: tekan Ctrl+F96. Memperbaiki program: memberitahu kesalahan sintaks atau penulisan program, setelah
diperbaiki kemudian program di-compile kembali7. 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 DeklarasiBentuk umumnya:
PROGRAM <StructureSample>;LABEL <LabelDeclaration>;CONST <ConstantDeclarations>;VAR <VariableDeclarations>;PROCEDURE/FUNCTION <Example>;
BEGIN
3

<BodyProcedureFunction>;END;
BEGIN<MainBodyProgram>;
END.
3. Bagian PernyataanBentuk umumnya:
BEGINPernyataan;…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,…
4

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 orand Downto Function interupt packedarray Else Goto label procedurebegin End If mod programcase External implementation nil recordconst File In not repeatdiv For in line of setshl Type While then var shr Unit With uses tostring 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
5

Penggunaan huruf kecil atau huruf kapital dianggap samaEx: yang benar: Semester_1 (identik dengan : SEMESTER_1)
NHargaBarang
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 Constantaprogram konstanta;uses crt;const
nama='Budi';Berat='54';tinggi='156';
beginwriteln('nama:',nama);writeln('berat:',berat);writeln('tinggi:',tinggi);readln;
end.
Data, macam dan pengelompokan tipe data dalam Turbo Pascal
ordinal Integer=data bilangan bulatShortintLongint
Sederhana BooleanChar=sebuah karakterByteSubrange
String Enumerated / terbilangreal
Tipe data
Larik / arrayTerstruktur Rekaman
Himpunan (set)Berkas (file)
Pointer
6

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 operatorangka 10 2 3 disebut operand
Macam operator yang dapat digunakan Aritmatika, terdiri atas:
Operator binary : + - / * DIV MODOperator 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 3MOD 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;varA,B,C:integer;F,Q,L:real;Z:string;beginA:=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);writeln('isi Q=',Q);
7

writeln('isi L=',L);writeln('isi Z= ',Z);readln; end.
Boolean (True False), terdiri atas: AND, OR, NOT, XORTabel kebenaran hasil dari operator boolean:
Operand 1 Operand 2 Hasil operasiAND OR XOR
FALSE FALSE FALSE FALSE FALSEFALSE TRUE FALSE TRUE TRUETRUE FALSE FALSE TRUE TRUETRUE 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.
8

TIPE DASAR
INTEGER: terdiri dari bilangan bulat dalam rentang tertentuOperator IntegerOperator Arti+ Penjumlahan- Pengurangan* PerkalianDIV Division, hasil pembagian bulatMOD Modulo, sisa pembagian
REAL: terdiri dari bilangan pecahan dalam rentang tertentuOperator 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 operasiAND OR XOR NOT Operand 1
FALSE FALSE FALSE FALSE FALSE TRUEFALSE TRUE FALSE TRUE TRUE TRUETRUE FALSE FALSE TRUE TRUE FALSETRUE TRUE TRUE TRUE FALSE FALSE
9

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 ThenSintaks 1
If SyaratLogika Then Pernyataan;
Sintaks 2If SyaratLogika Then
BeginPernyataan1;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;varsuhu:real;beginwrite('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];
10

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 THENProgram pernyataan_if_then;uses wincrt;var
nilai:integer;siswa,ket:string;P:char;
beginwriteln('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 ThenProgram pernyataan_if_then;uses wincrt;var
nilai:integer;siswa,ket:string;P:char;
beginwriteln('masukkan nama siswa=');readln(siswa);writeln('masukkan nilai ujian=;);
11

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 ElseMirip dengan pernyataan If Then. Ada 2 sintaks untuk pernyataan If Then ElseSintaks 1
If SyaratLogika Then;Pernyataan1;
ElsePernyataan2;
Sintaks 2If SyaratLogika Then
BeginPernyataan1;Pernyataan2;……………;
End {tanpa tanda titik koma}Else
BeginPernyataanA;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 ELSEProgram pernyataan_if_then;uses wincrt;var
nilai:integer;siswa,ket:string;P:char;
beginwriteln('masukkan nama siswa=');readln(siswa);writeln('masukkan nilai ujian=;);readln(nilai);if nilai >=85 then P:='A' else
12

if nilai >=75 then P:='B'elseif nilai >=60 then P:='C'elseif nilai >=50 then P:='D'elseif 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 IfIf Then Else If sebenarnya merupakan pernyataan bersyarat dalam pernyataan bersyarat yang lain.Ada 2 sintaks untuk pernyataan If Then Else IfSintaks 1
If SyaratLogika Then;Pernyataan1
Else If SyaratLogika ThenPernyataan2
Else Pernyataan3;
13

Sintaks 2If SyaratLogika Then
BeginPernyataan1;Pernyataan2;……………;
End Else If SyaratLogika Then
BeginPernyataan21;Pernyataan22;……………;End
ElseBegin
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;
14

END.
D. Case OfPernyataan 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;
beginwriteln('mencoba pernyataan case of');writeln;writeln('masukkan nama anda:');readln(nama);write('masukkan nilai 1-10');readln(nilai);case nilai of1 : 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;
readlnend.
15

Contoh 2 program case ofprogram pernyataancaseof;uses wincrt;var
nilai:char;nama:string;
beginwriteln('mencoba pernyataan case of');writeln;writeln('masukkan nama anda:');readln(nama);write('masukkan nilai A...E');readln(nilai);case nilai ofA : 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;
readlnend.
Contoh 3 pogram case ofProgram Nilai;uses wincrt;var
nilai: integer;nama:string;
beginwriteln('mencoba pernyataan case of');writeln;writeln('masukkan nama anda:');readln(nama);write('masukkan nilai 0-100 (nilai bilangan bulat)');readln(nilai);case nilai of85..100 begin
writeln ('nama anda=',nama);writeln ('mendapat nilai:A');
75..84 beginwriteln ('nama anda=',nama);writeln ('mendapat nilai:B');
60..74 beginwriteln ('nama anda=',nama);writeln ('mendapat nilai:C');
50...59 beginwriteln ('nama anda=',nama);writeln ('mendapat nilai:D');
16

0..49 beginwriteln ('nama anda=',nama);writeln ('mendapat nilai:E');end;
end;readlnend.
Contoh 4 Program Case Of Menentukan Hitungan GeometriProgram 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;
17

'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 Empat2. Luas Segi Tiga3. Luas Lingkaran4. Keliling Lingkaran5. Volume Bola6. Selesai-----------------------Masukkan Pilihan Anda:2Alas:5Tinggi:7Luas: 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 1For NamaVarCounter:= Awal To Akhir Do
18

Pernyataan;
Sintaks 2For NamaVarCounter:= Awal To Akhir Do
BeginPernyataan1;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 doProgram 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 doProgram 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
19

Sintaks 1For NamaVarCounter:= Awal Downto Akhir Do
Pernyataan;
Sintaks 2 For NamaVarCounter:= Awal Downto Akhir Do
BeginPernyataan1;Pernyataan2;……………;
End;
Catatan:Jika Awal < Akhir digunakan perintah For To DoJika 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 DoPernyataan While Do biasanya dipakai untuk melakukan pengulangan yang jumlahnya tidak diketahui sebelumnya.While do mengeksekusi pernyataan lain selama beberapa kondisi bernilai true.Sintaks 1While SyaratLogika Do
Pernyataan;
Sintaks 2While SyaratLogika Do
BeginPernyataan1;
20

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 WhileDoProgram 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 DoProgram 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:
21

C. Repeat UntilMirip dengan While Do,dimana setiap pernyataan perulangan dengan For To Do dapat diubah menjadi pernyataan menggunakan Repeat Until.Sintaks 1
RepeatPernyataan;
Until SyaratLogika;
Sintaks 2RepeatPernyataan1;Pernyataan2;……………;Until SyaratLogika;
Pernyataan atau blok pernyataan akan terus menerus dikerjakan selama SyaratLogika terpenuhi (bernilai True)
Contoh 1 Program menggunakan repeat untilProgram 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');
22

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

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 ANData 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 array2. mendefiniskan tipe data dari elemen array
contoh:
const N=10;typeA=array [1…N] of integer;
Contoh program menggunakan Array dengan tipe integerprogram 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.
24

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 MultidimensiDalam 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
25

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 / ProcedureMerupakan 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);
KeteranganNamaProsedur : nama prosedurParameter : 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;
26

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 / FunctionHampir 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 fungsiParameter : 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….’);
27

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.
28