Pengertian Turbo Pascal
Pascal merupakan suatu
bahasa komputer tingkat tinggi yang dibuat sekitar tahun
1970 oleh Niklaus Wirth
dan digunakan untuk pendidikan komputer. Nama Pascal
diambil dari seorang ahli
matematika yang bernama Blaise Pascal yang menemukan
mesin hitung pertama.
Bahasa Pascal dirancang untuk menyelesaikan masalah dari
berbagai kalangan pemakai, mulai dari para mahasiswa, pendidik, dan
ilmuwan.
Srtuktur Pascal
program ... ; {
Program heading }
uses ... ; { Uses
clause }
label ... ; { Labels
}
const ... ; {
Constants }
type ... ; { Types }
var ... ; {
Variables }
procedure ... ; {
Procedures }
function ... ; {
Functions }
begin
statement; {
Statements }
...
end.
Contoh program Pascal sederhana
Program
tutorial_pertamaku;
Uses
crt;
Writeln(‘halo
ini tugas pertamaku’);
Readln;
End.
Type variable Pascal yang
di sediakan:
1.
Ordinal type
Type data yang mempunyai urutan pasti. Dan di bagi menjadi:
-Integer
Type variable yang beguna
untuk pengolahan data yang bulat, type ini masih terbagi
atas berberapa menurut jangkauan data dan ukurannya :
Tipe variable integer:
Type
|
Jangkuan
|
Ukuran
|
Shortint
|
-128..127
|
8 bit
|
Word
|
0..65535
|
16 biT
|
Integer
|
-32768..32767
|
16 bit
|
Longint
|
-2147483648..2147483647
|
32 bit
|
Byte
|
0..255
|
8 bit
|
- Char
Type variabel yang berguna
untuk pengolahan character ASCII, type character ini
penulisannya ditandai
dengan dua buah petik tunggal seperti : 'A', '3','*',#7 untuk
menyatakan ' harus ditulis
''''
- Boolean
Type varibale yang berguna
untuk pengolahan hal yang hanya mempunyai dua
ketentuan yaitu
benar(TRUE) dan salah(FALSE) saja.
2.Real types
Type variable yang beguna
untuk pengolahan data yang tidak bulat, untuk type real
ini juga terbagi atas
beberapa :
Type
|
Jangkauan
|
Ketelitian
|
Ukuran
|
Real
|
2.9e-39..1.7e38
|
11-12 digit
|
6 bit
|
Single
|
1.5e-45..3.4e38 ³ 7-8
|
7-8 digit
|
4 bit
|
Double
|
5.0e-324..1.7e308
|
15-16 digit
|
8 bit
|
Extended
|
3.4e-4932..1.1e4932
|
19-20 digit
|
10 bit
|
Comp
|
-9.2e18..9.2e18
|
19-20 digit
|
8 bit
|
Untuk pengolahan type
variabel diatas di sediakan berbagai jenis operator antara lain:
Operator
|
Integer type
|
Real type
|
+
|
Penjumlahan
|
Penjumlahan
|
-
|
Pengurangan
|
Pengurangan
|
*
|
Perkalian
|
Perkalian
|
/
|
Pembagian
|
Pembagian
|
DIV
|
Hasil bagi
|
|
MOD
|
Sisa Bagi
|
Operator
|
Type
|
Boolean type
|
NOT
|
Bitwise Negation
|
Logical Negation
|
AND
|
Bitwise AND
|
Logical AND
|
OR
|
Bitwise inclusive OR
|
Logical inclusive OR
|
XOR
|
Bitwise exclusive OR
|
Logical exclusive OR
|
SHR
|
Bitwise shift-left
|
|
SHL
|
Bitwise shift-right
|
Operator relasi yang
mengembalikan hasil Boolean
Operator
|
Fungsi
|
:=
|
Menyatakan nilai
|
=
|
Sama dengan
|
<>
|
Tidak sama dengan
|
<
|
Lebih kecil
|
>
|
Lebih besar
|
<=
|
Lebih kecil atau sama
dengan
|
>=
|
Lebih besar atau sama dengan
|
Cara menggunakan variable di dalam pascal
Program tutor2_var;
Uses crt;
Var name: string;
Umur: byte;
Begin
Clrscr;
Write(‘masukkan
nama: ‘); readln(name);
Write(‘masukkan
umur: ‘); readln(umur);
Write(‘hai nama saya
‘,name);
Write(‘saya berumur
‘,umur);
Readln;
End.
Cara membatasi jumlah karakter pada variable
Program tutor3_var;
Uses crt;
Var name:
string[20]; {dibatasi sebanyak 20
karakter}
Umur: byte[3]; {dibatasi sebanyak 3
karakter}
Begin
Clrscr;
Write(‘masukkan
nama: ‘); readln(name);
Write(‘masukkan
umur: ‘); readln(umur);
Write(‘hai nama saya
‘,name);
Write(‘saya berumur
‘,umur);
Readln;
End.
Program penghitungan matematika pada pascal
Program tutor4_var;
Uses crt;
Var a,b,c,d,e,f :
real
Begin
Clrscr;
a:=60;
b:=6;
c:=a+b;
d:=a-b;
e:=a*b;
f:=a/b; {pembagian hanya dapat dengan
variable real}
writeln(‘hasil
penjumlahan ‘,c:2:2); {“:2:2” berguna
untuk membatasi tempat decimal}
readln;
writeln(‘hasil
pengurangan ‘,d:2:2);
readln;
writeln(‘hasil
perkalian ‘,e:2:2);
readln;
writeln(‘hasil
pembagian ‘,f:2:2);
end.
Menggunakan posisi kursor
Program
tutor5_gotoxy;
Begin
Clrscr;
Gotoxy(5,6);
Writeln(‘saya sedang
belajar’); readln;
Gotoxy(9,10);
Writeln(‘turbo’);
readln;
Gotoxy(10,18);
Writeln(‘pascal
7.0’); readln;
End.
Konvensi Penjumlah
(+), Pengurangan (-), dan Perkalian (*) :
integer dengan
integer = integer
integer dengan real =
real
real dengan real =
real
Konvensi Pembagian
(/) :
Selalu menghasilkan
real.
Pembagian bulat
dengan Div :
Menghasilkan Integer.
Menggunakan if_else
Program
tutor6_if_else;
Uses crt;
Var angka1,angka2 :
longint;
Begin
Clrscr;
Write(‘angka
pertama: ‘); readln(angka1);
Write(‘angka kedua:
‘); readln(angka2);
Begin
Writeln(‘==========================’);
Writeln(‘perbandingan
angka antara: ‘,angka1, ‘dan ‘,angka2);
If angka1 < angka2 then
Writeln(‘angka yang
lebih besar adalah: ‘,angka2)
Else writeln(‘angka
yang lebih besar adalah: ‘,angka1);
Readln;
End;
End.
Apa yang disebut looping?
Secara
sederhana looping diartikan sebagai proses berulang terhadap statement
maupun
serangkaian statement lebih dari satu kali.
Contoh
program looping
a. for
Program tutor7_looping_for;
Uses crt;
Var i: integer;
Begin
Clrscr;
For i:= 1 to 5 do
write(‘ini yang ke ‘,i);
readln;
end.
b. While
Program tutor8_looping_while;
Uses crt;
Var i: integer;
Lagi: char;
Begin
Lagi:= (‘y’);
While (‘lagi = ‘y’) or (lagi = ‘y’)
do
begin
Clrscr;
for i:= 10 downto 1
do
writeln(ini yang ke
‘,i);
readln;
write(‘mau hitung
lagi apa tidak (y/t)’);
readln(lagi);
end;
end.
c. Case
Program tutor9_case;
Var pilih : char;
Begin
Clrscr;
Write(‘pilih 1 atau
2: ‘); readln(pilih);
Case pilih of
‘1’: write(‘anda
memilih 1’);
‘2’: write(‘anda
memilih 2’);
Else write(‘anda
memilih yang lain’);
End;
Readln;
End.
d. Procedure dan Repeat
program
tutor10_pro_re;
uses crt;
var pilih : integer;
{ini adalah
procedure}
procedure
penjumlahan;
var a,b,c : integer;
begin
writeln(‘penjumlahan’);
write(‘nilai 1: ‘);
readln(a);
write(‘nilai 2: ‘);
readln(b);
write(‘hasil: ‘,a+b);
readln;
end;
procedure
pengurangan;
var a,b,c: integer;
begin
writeln(‘pengurangan’);
write(‘nilai 1: ‘);
readln(a);
write(‘nilai 2: ‘);
readln(b);
write(‘hasil:
‘,a-b); readln;
end;
procedure perkalian;
var a,b,c: integer;
begin
writeln(‘perkalian’);
write(‘nilai q: ‘);
readln(a);
write(‘nilai 2: ‘);
readln(b);
write(‘hasil:
‘,a*b); readln;
end;
procedure pembagian;
var a,b,c: real;
begin
writeln(‘pembagian’);
write(’nilai 1: ‘);
readln(a);
write(‘nilai 2: ‘);
readln(b);
write(‘hasil:
‘,a/b); readln;
end;
{ini adlah bagian
utama}
begin
repeat
clrscr;
writeln(‘PILHAN’);
writeln(‘______________________________’);
writeln(‘1.
Penjumlahan’);
writeln(‘2.
Pengurangan’);
writeln(‘3.
Perkalian’);
writeln(‘4.
Pembagian’);
writeln(‘5. Exit’);
writeln(‘______________________________’);
writeln;
write(‘silahkan anda
memilih angka’);
readln(pilih);
{ini bagian
pemanggilan procedure}
1 : penjumlahan;
2 : pengurangan;
3 : perkalian;
4 : pembagian;
End;
Until pilih = 5;
End.
Random dan randomize
Kedua berfungsi menghasilkan bilangan
random, bilangan random sering digunakan
untuk mensimulasikan dunia nyata yang
penuh dengan ketidakpastian. Kita tidak akan
mendiskusikan hal ini, tetapi
pemakaian kedua perintah tersebut.
Randomize digunakan untuk
menginisialisasi suatu bibit random secara acak yang
cukup dipanggil sekali saja.
Random digunakan untuk mendapatkan
bilangan random(bilangan), yang akan
menghasilkan bilangan 0 s/d
bilangan-1. Misalnya num:=random(50); berarti variabel
num mungkin berisi salah satu bilangan
0 s/d 49.
Cobalah contoh berikut :
Program tutor11_random;
Uses crt;
Var i : byte;
Begin
Clrscr;
randomize;
for i:=1 to 10 do
write(random(30),' ');
end.
Coba hilangkan "randomize",
dan jalankan beberapa kali, bagaimana dengan bilangan
yang dihasilkan apakah sama pada
setiap percobaan ?
Jadi, selalu gunakan
"randomize" untuk menjamin kerandoman bilangan yang
dihasilkan pada
setiap run.
Menentukan luas dan keliling segitiga siku-siku
Peghitungan keliling
segitiga siku-siku identik dengan Pythagoras kan? Lihat contoh dibawah ini!
Program
tutor12_pythagoras;
Var a,t,p,L,K :
real;
Begin
Clrscr;
Writeln(‘MENGHITUNG
LUAS DAN KELILING SEGITIGA SIKU-SIKU’);
Write(‘===============================================’);
Write(‘masukkan
alas: ‘); readln(a);
Write(‘masukkan
tinggi: ‘); readln(t);
Begin
P:=sqrt(sqr(a)+sqr(t));
L:=a*t;
K:=a+t+p;
Writeln(‘luas
‘,L:2:2);
Writeln(‘keliling
‘,K:2:2);
Readln;
End;
End.
Pada penghitunga sisi
miring menggunakan sqrt untuk akar pangkat 2 dan sqr untuk pangkat 2.
Menentukan bilangan ganjil genap
Program tutor13_ganjil_genap;
var bil: longint;
begin
writeln('MENENTUKAN JENIS BILANGAN');
writeln('-------------------------');
write('Masukkan angka: ');readln(bil);
if ((bil=2) or (bil=3) or (bil=5) or (bil=7))
then
write('bilangan prima')
else if ((bil mod 2 <> 0) and (bil mod 3
<> 0) and
(bil mod 5 <> 0) and (bil mod 7 <>
0)) then
write('bilangan prima')
else write('bukan bilangan prima');
if bil mod 2 = 0 then
writeln(' dan genap')
else
writeln(' dan ganjil');
readln;
end.
bintang segitiga
Setelah sebelumnya kita bermain dengan
if, sekarang ke for. Program di bawah ini akan memunculkan output berupa
sekumpulan bintang yang membentuk tangga
Program tutor14_bintang;
const akhir=18;
var baris, kolom: integer;
begin
for baris:=1 to akhir do
begin
for kolom:=1 to baris do
write('*');
writeln;
end;
readln;
end.
Coba dech dijalankan, gimana hasilnya?
menarik bukan?. Sekarang kita coba menampilkan sekumpulan bintang yang
membentuk kubus.
Membuat bintang kubus
Program tutor15_kubus;
uses crt;
Var i, j, x, y:integer;
Begin
clrscr;
Write('Masukkan Dimensi Kubus: ');Readln(x);
y:=0;
For i:=1 to x do
Begin
for j:=1 to x do
Begin
y:=y+1;
write(y:4);
if y mod x=0 then
Writeln;
End;
End;
readkey;
End.
Gimana? baguskan? Sekarang tugas kamu
membuat sekumpulan bintang berbentuk piramida dan berbentuk tangga terbalik
(seperti program pertama di atas tetapi terbalik)
Membuat daftar di toko
Di pelajaran
sebelumnya telah dijelaskan cara penggunaan array
dan record. Sekarang kita akan menggabungkan array dan record tersebut.
Perhatikan program di bawah ini:
Program tutor16_toko;
type dmhs=record
nrp:string[10];
nama:string[25];
alamat:string[50];
end;
var data:array[1..3] of dmhs;
i:integer;
begin
for i:=1 to 3 do
begin
write('nrp : ');readln(data[i].nrp);
write('nama : ');readln(data[i].nama);
write('alamat : ');readln(data[i].alamat);
end;
writeln;
writeln('Data ditampilkan');
for i:=1 to 3 do
begin
writeln('nrp : ', data[i].nrp);
writeln('nama : ', data[i].nama);
writeln('alamat : ', data[i].alamat);
end;
readln;
end.
Apa yang dimaksud array?
Array
itu adalah tipe data terstuktur yang berguna untuk menyimpan sejumlah data yang
bertipe sama.
Program tutor17_array;
Uses crt;
Var buah: array
[1..3] of string;
i : integer;
begin
clrscr;
for i:= 1 to 3 do
begin
write(‘masukkan
buah-buahan ke ‘,I,’:’); readln(buah[i]);
end;
writeln;
writeln;(‘isi buah-buahan tadi : ‘);
for i:= 1 to 3 do
writeln(‘buah ke
‘,I,’:’ ,buah[i]);
readln;
end.
Dengan
hanya menggunakan satu nama variabel yaitu buah, kita bisa menyimpan 3 nilai
yang berbeda. Misalkan yang kita masukkan adalah melon, duku dan mangga. maka
buah[1] bernilai melon, buah[2] bernilai duku dan buah[3] bernilai mangga.
Apa yang disebut record;
Program
tutorial18_record;
type buah = record
nama: string;
harga: longint;
end;
var data:buah;
Begin
write('nama buah: ');readln(data.nama);
write('harga buah: ');readln(data.harga);
write('ditampilkan');
write('nama');readln(data.nama);
writeln('harga');readln(data.harga);
End.
Apa yang bisa kamu ambil kesimpulan
dari program di atas? Bingung? Jadi gini, dengan menggunakan record (di sini
bernama buah) kita bisa membuat tipe data yang berisi beberapa data yang
berlainan tipe (nama dengan jenis string, dan harga dengan jenis long integer)
yang ini disebut field.
Perhatikan baris ke 6, di situ
dideklarasikan bahwa variabel data bertipe buah. Otomatis yang dimiliki buah
(nama dan harga) dimiliki juga oleh data. Setelah itu lihat baris ke 8 dan 9.
Nama buah disimpan dalam field nama dan harga buah disimpan di dalam field
harga. Untuk bisa menyimpan data di field, urutannya harus variabel.field
(contohnya di sini data.nama atau data.harga). Begitu juga bila kita ingin menampilkan
isi field tersebut.
Tipe data seperti ini sangat berguna
kedepannya loohh... Apalagi jika digabungkan dengan array.
Penggunaan fungsi
Program
tutor19_fungsi
Uses crt;
Var hasil: integer;
Function
itung(a,b:integer); integer;
Begin
Itung:=a+b;
End;
Begin
Clrscr;
Hasil:=itung(7,9);
Writeln(‘hasil 7+9
sama dengan ‘,hasil);
Readln;
End.
Mencari bilangan prima
Program
tutor20_prima;
Uses crt;
Var prima:
array[1..11] of integer;
I,j: integer;
Bil: integer;
Begin
Clrscr;
For i:= 2 to 11 do
Begin
Prima[i]:=I;
For j:= 2 to i-1 do
Begin
Bil:= (I mod j);
If bil= 0 then
prima[i]:=0;
End;
If prima[i] <>
0 then write(prima[i],’ ‘);
End;
Readln;
End.
sekian postingan dari saya.. semoga bisa bermanfaat.. anda bisa download file pdf
Tutorial Turbo Pascal 7.0Dan jika kalian berminat bisa download Turbo Pascal 7.0 di bawah ini..
Turbo Pascal 7.0
source : http://ilmukomputer.org/
0 Komentar untuk "Tutorial Dasar Turbo Pascal 7.0"