1. Statemen-statemen yang digunakan untuk
input/output.
#
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.
# ReadKey [fungsi].
Untuk pembacaan sebuah karakter dari
keyboard. Tipe data yang dihasilkan adalah char.
Sintaks: ReadKey;
# 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
Contoh :
Program
input;
Uses
Crt;
Var
nm : String;
npm
: String;
Begin
Clrscr;
Writeln
('masukkan nama dan NPM ');
Writeln
('------------------------------');
Write
('nama anda : ');
Readln
(nm);
Writeln
('NPM anda : ');
Readln
(npm);
End.
Bila
dijalankan hasilnya adalah:
masukkan
nama dan NPM
------------------------------
nama
anda : ( di input )
NPM
anda : ( di input )
2. Statemen-statemen yang digunakan untuk
pengaturan letak layar.
# ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan
layar.
sintaks: ClrScr; [Clear
screen]
# GotoXY[prosedur].
Untuk menempatkan posisi kursor pada
layar.
Sintaks: GotoXY(X, Y: Byte);
Keterangan : X = sumbu X (posisi
horisontal)
Y = sumbu Y (posisi vertikal)
Jadi misalnya anda ingin mencetak tulisan
tersebut pada kolom 20, baris 13, maka anda harus memindahkan cusor keposisi
kolom 20, baris 13, diikuti dengan perintah pencetakan tulisan tersebut, contoh
:
GotoXY(20,13);
Writeln('Tulisan
ini dicetak mulai kolom 20, di baris 13);
GotoXY(5,5);
Write('Turbo');
GotoXY(WhereX+10,3);
Write('Pascal');
jumlah
kolom dan baris pada layar normal ?
Normalnya
80 kolom, 25 baris.
TextMode(CO40);
Dan
TextMode(CO80);
Uses CRT;
begin
TextMode(CO40);
Writeln('A Real BIG Characters on
screen !');
Readln;
TextMode(CO80);
Writeln('Back to normal');
Readln;
end.
# DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi
kursor dan menaikkan baris-baris dibawahnya.
Sintaks: DelLine;
# InsLine [prosedur].
Untuk
menyisipkan sebuah baris pada posisi kursor dan menggeser kebawah tampilan-tampilan
baris dibawahnya.
Sintaks: InsLine;
Statemen-statemen tambahan (warna,suara
dan window).
# TextColor [prosedur].
Untuk mengatur warna dari
karakter-karakter di layar.
Sintaks: TextColor (color : Byte);
Catatan : untuk pilihan warna lihat pada buku
Turbo Pascal yang anda miliki.
Daftar
TextColor :
(2) Hijau
Muda (3) Hijau pupus (4) Merah
(5) Ungu
Tua (6) Kuning (7) Putih
(8) Biru
Tua (9) Biru Cerah (10) Hijau Muda
(12) Merah
Muda (13) Ungu Cerah (14) Kuning
Muda
(15) Ungu
Pupus (16) Hitam
Daftar
TextColor dengan Blink :
(17) Biru
Tua (18) Hijau Muda (19) Hijau Pupus
(20) Merah
(21) Ungu Tua
uses crt;
begin
TextColor(14);
TextBackGround(1);
Writeln('Hello there !');
end.
Anda
dapat saja melakukan hal tersebut dengan menambahkan angka 128 pada nomor warna
yang anda inginkan, misalnya :
TextColor(4
+ 128);
Writeln('Merah
dan berkedip-kedip');
Atau
:
TextColor(Red
+ Blink);
Writeln('Merah dan berkedip-kedip');
#
TextBackGround [prosedur].
Untuk mengatur warna latar belakang dari
karakter-karakter di layar.
Sintaks:
TextBackGround (Color : Byte);
# Bentuk – bentuk Perulangan
Dalam hampir
setiap program yang kompleks mutlak memerlukan suatu perulangan dan
percabangan. Tujuan perulangan disini adalah untuk mengulang statement atau
blok statement berulang kali sesuai
sejumlah yang
ditentukan pemakai. Dalam materi ini akan memberikan gambaran konsep dasar dari
pengertian diatas.
# Perulangan For.
Perulangan dengan statemen For digunakan
untuk mengulang statemen atau suatu blok statemen berulang kali. Perulangan
dengan statemen For dapat berupa perunlangan positif dan perulangan negatif.
# Perulangan For positif
contoh :
perulangan positif untuk satu statement :
Uses
Crt;
Var
i
: Integer;
Begin
For
i := 1 To 5 Do Writeln ('I Love Dinda’);
END.
Penjelasan : Berati statemen I Love Dinda
akan diulang sebanyak 5 kali yaitu dengan menghitung nilai i dari i ke 1 sampai
nilai i terakhir yaitu i ke 5.
# Contoh dengan menggunakan blok
statement:
cara penulisannya dengan pada awal blok
diawali dengan Begin dan
pada akhir blok diakhiri dengan End;
Uses
Crt;
Var
i
: Integer;
Begin
For
i:= 1 To 10 Do
Begin
Writeln
('I Love Dinda'); { blok statement }
End;
End.
# Perulangan For negatif
Perulangan negatif adalah perulangan
dengan menghitung (counter) dari besar ke
kecil.
Statement yang digunakan adalah
For-DownTo-Do
contoh :
Uses
Crt;
Var
i
: Integer;
Begin
For
i := 10 DownTo 1 Do Write (i:3);
End.
# Perulangan For tersarang
Perulangan For tersarang adalah perulangan
For yang berada pada perulangan yang lainnya. Perulangan yang lebih dalam akan
diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru
akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai
awalnya dan seterusnya.
Contoh :
Var
a,b
: Integer;
Begin
For a := 1 To 3 Do
Begin
For
b := 1 To 2 Do Write (a :4,b:2);
Writeln;
End;
End.
# Perulangan While - Do
Penyeleksian kondisi digunakan untuk agar
program dapat menyeleksi kondisi, sehingga program dapat menentukan tindakan
apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi tersebut.
Perulangan While – Do tidak dilakukan jika kondisi tidak terpenuhi.
Contoh :
Uses
Crt;
Var
i : Integer;
Begin
i
:= 0;
While
< 5 do
Begin
Write
(i:3);
Inc
(i); { sama dengan i:=i+1 }
End;
End.
# Perulangan While – Do tersarang
Perulangan While – Do tersarang (nested
While - Do) merupakan perulangan While – Do yang satu di dalam perulangan While
– Do yang lainnya.
Contoh :
Uses
Crt;
Var
a,
b : Integer;
Begin
ClrScr;
a:=1;
b:=1;
While
a < 4 Do{ loop selama a masih lebih kecil dari 4 }
Begin
a
:= a+1;
While
b < 3 Do{ loop selama b masih lebih kecil dari 3 }
Begin
Write
(a:3,b:2);
b:=b+1;
End;
End;
Readln;
End.
# Perulangan Repeat - Until.
Repeat – Until digunakan untuk mengulang
statement-statemen atau blok statement sampai (Until) kondisi yang diseleksi di
Until tidak terpenuhi. Sintak dari statement ini adalah :
Contoh :
Var
i
: Integer;
Begin
i:=0;
Repeat
i:=
i+1;
Writeln
(i);
Until
i=5;
End.
# Repeat – Until tersarang
Repeat – Until tersarang adalah suatu
perulangan Repeat - Until yang satu berada didalam perulangan Repeat – Until
yang lainnya.
Contoh :
Var
a,b,c
: Real;
Begin
Writeln('========================================');
Writeln('
sisi A sisi B Sisi C ');
Writeln
(' =======================================');
a:=
1;
Repeat
{ perulangan luar }
b := 0;
Repeat{
perulangan dalam }
c:=Sqrt
(a*a+b*b);
Writeln
(a:6:2, b:9:2, c:9:2);
b:=b+5;
Until
b>25; { berhenti jika b lebih besar dari 5 untuk
perulangan
dalam }
a:=a+1;
Until
a>3; { berhenti jika a lebih besar dari 3 untuk
perulangan
luar }
Writeln('
=======================================');
End.
# Percabangan
# If - Then
Bentuk struktur If – Then adalah sebagai berikut :
If Kondisi Then Statement
Ungkapan adalah kondisi yang diseleksi oleh statement
If. Bila kondisi yang diseleksi terpenuhi, maka statement yang mengikuti Then
akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan diproses
statement berikutnya.
Misalnya :
If Pilihan = 2 Then
Begin{ jika kondisi terpenuhi, Yaitu jika pilihan = 2
}
......
......
End
Else{ jika kondisi tidak terpenuhi, yaitu jika pilhan
tidak sama dengan 2}
Begin
.......
.......
End;
Contoh Program :
Uses Crt;
Var
Nilai :
Real;
Begin
Write
('Jumlah Nilai :');
Readln
(nilai); { Pemasukan data }
If nilai
> 60 Then { seleksi kondisi variabel nilai }
Writeln('Lulus')
{ Dilaksanakan jika nilai lebih besar dari 60 }
Else
Writeln('Tidak
lulus'); { Dilaksanakan jika variabel nilai lebih kecil dari 60 }
End.
Hasil :
Jika kita Memasukan 40 pada varibel nilai,
Maka program diatas akan mencetak Tidak lulus.
# If tersarang (nested If)
Struktur If tersarang merupakan bentuk
dari suatu statement If berada di dalam lingkungan statemen If yang lainya.
Bentuk statement If tersarang sebagai berikut :
If kodisi1 Then atau If Kondisi1 Then
If kondisi2 Then Begin
statemen1 IF kondisi2 Then
Else statemen1
statemen2; Else
statemen2
End;
# Case - Of
Struktur Case – Of mempunyai suatu
ungkapan logika yang disebut dengan selector dan sejumlah statemen yang diawali
dengan suatu label permasalahan (case label) yang mempunyai tipe sama dengan
selector.
Statement yang mempunyai case label yang
bernilai sama dengan case label yang bernilai sama dengan nilai selector akan
diproses sedang statemen yang lainya tidak. Bentuk struktur dari Case - Of:
Case Variabel Kondisi Of
Case – Label 1; Statement 1;
Case – Label 2; Statement 2;
Case – Label 3; Statement 3;
Case – Label 4; Statement 4;
........
........
Case – Label n ; Statement n ;
End ; { end dari case }
Daftar Case label dapat berupa konstanta,
range dari konstanta yang bukan bertipe real. Contoh program ;
Program
nilai;
Var
nil
: Char ;
Begin
Write ('Nilai Numerik yang didapat :');
Readln
(nil);
Case
nil Of
'A':
Writeln ('Sangat Baik’);
'B':
Writeln('Baik’);
'C':
Writeln('Cukup');
'D':
Writeln('Kurang');
'E':
Writeln('Sangat Kurang');
End;
End.
Program Koversi_nilai;
uses crt;
var
nilai :integer;
lagi :char;
begin
repeat
clrscr;
Write('Masukkan nilai :');readln(nilai);
case nilai of
81..100 :writeln('A');
61..80 :writeln('B');
41..60 :writeln('C');
21..40 :writeln('D');
0..20 :writeln('E');
else
writeln('Salah nilai');
end;
write('Lagi.....[Y/T]');lagi:=upcase(readkey);
writeln(lagi);
until lagi <> 'Y';
end.
Array adalah tipe
data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai
tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik
mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik
ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses
dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data
sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data
scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen-
komponenya mempunyai nilai dengan tipe data tersebut.
Contoh:
Var
Untai :
array[1..50] of Integer;
Pada contoh Array
dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah
elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus
bertipe integer.
Array 1 Dimensi
--> hanya mempunyai 1
tempat penyimpanan untuk indexnya.
uses crt;
var
a: array [1..3] of integer;
ini berarti bahwa a adalah
sebuah array yang memiliki 3 index atau array a memiliki 3 data didalamnya.
Data dalam array a dapat disesuaikan sebagaimana kebutuhan kita.
Array 2 Dimensi
--> mempunyai 2 tempat
penyimpanan untuk indexnya
uses crt;
var
a : array [1..3,1..3] of
integer;
ini berarti bahwa array a
memiliki 9 index yaitu 1.1, 1.2, 1.3 ... 3.2, 3.3. Bentuk array seperti ini
kerap kita jumpai pada pemrograman matriks baik itu penjumlahan, ataupun
perkalian.
Ok, untuk penggunaan array
secara real pada program adalah sebagai berikut:
uses crt;
var
a:array [1..3] of integer;
k,l:integer;
begin
clrscr;
for k:=1 to 3 do
begin
writeln('Masukkan Angka:'); readln (a[k]);
end;
for k:= 1 to 3 do
begin
l:= l + a[k];
end;
writeln('Jumlah dari Semua Angka: ',l);
readln;
end.
var
a : array[1..10] of byte;
begin
a[1]:=10;
a[2]:=15;
a[3]:=a[1]+a[2];
writeln(a[1]);
writeln(a[2]);
writeln(a[3]);
end.
Program diatas akan menjumlahkan
seluruh index dari array a yang kemudian dinilai sebagai l.
LAIN-LAIN
program kalkulator;
uses crt;
var n1,n2,p,h:real;
begin
writeln('Program Kalkulator');
writeln('==================');
write('Masukkan Nilai Pertama= ');readln(n1);
write('Masukkan Nilai Kedua= ');readln(n2);
writeln('Pilih Operasi:');
writeln('1 --> Perkalian');
writeln('2 --> Pembagian');
writeln('3 --> Penjumlahan');
writeln('4 --> Pengurangan');
write('Pilihan anda [1..4]= ');readln(p);
if p=1 then h:=n1*n2;
if p=2 then h:=n1/n2;
if p=3 then h:=n1+n2;
if p=4 then h:=n1-n2;
writeln('Hasil Operasinya Adalah= ',h:0:2);
readln;
end.
Program
Menghitung_Volume_Luas_Permukaan_Bola;
uses wincrt;
Var Luas,R,V :Real;
Begin
writeln('Program Menghitung_Volume_Luas_Permukaan_Bola');
write('Jari-jari = '); {Masukan Nilai Jari2}
readln(R);
Luas:=4*pi*R*R;
V:=4/3*pi*R*R*R;
writeln('Jadi Volumenya = ',V:0:2);
writeln('Jadi Luasnya = ',Luas:0:2);
readln;
End.
uses crt;
var
c : char;
begin
write('Yes or no (Y/N) ?');
repeat
c:=upcase(readkey);
until c in ['Y','N'];
end.
Tidak ada komentar:
Posting Komentar