- TIPE DATA
Tipe data yang disediakan oleh PASCAL meliputi:
merupakan tipe data dasar yang sering dipakai oleh program, meliputi: integer (bilangan bulat), real (bilangan pecahan), char (alphanumerik dan tanda baca), dan boolean (logika). Untuk data integer dan real masing-masing terbagi menjadi beberapa kategori
a. Bilangan Integer
contoh:
Program display_maxint;
uses wincrt;
begin
uses wincrt;
begin
writeln (maxint)
end.Hasilnya: 32.767
end.Hasilnya: 32.767
Tipe Data
|
Ukuran Tempat
|
Rentang Nilai
|
Byte
|
1 byte
|
0 s/d +255
|
Shortint
|
1 byte
|
-28 s/d +127
|
integer
|
2 bytes
|
-32768 s/d 32767
|
Word
|
2 bytes
|
0 s/d 65535
|
Longint
|
4 bytes
|
2147483648 s/d 2147483647
|
b. Bilangan Real
Tipe Data
|
Ukuran Tempat
|
Rentang Nilai
|
real
|
6 bytes
|
2.9 x 10-39 s/d 1.7 x1038
|
single
|
4 bytes
|
1.5 x 1045 s/d 3.4 x 1038
|
double
|
8 bytes
|
5.0 x 10-324 s/d 1.7 x 10308
|
extended
|
10 bytes
|
3.4 x 10-4932 s/d 1.1 x 104932
|
comp
|
8 bytes
|
-9.2x 1018 s/d 9.2x 1018
|
c. Char
Tipe data ini menyimpan karakter yang diketikkan dari keyboard, memiliki 266 macam yang terdapat dalam tabel ASCII (American Standard Code for Information Interchange). Contoh: 'a' 'B' '+', dsb. Yang perlu diingat bahwa dalam menuliskannya harus dengan memakai tanda kutip tunggal. Jenis data ini memerlukan alokasi memori sebesar 1(satu) byte untuk masing-masing data.
d. Tipe Data Boolean
merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE (benar) atau FALSE (salah)
contoh :
Program hal_string;Contoh: Program display_bool ;
uses wincrt;
uses wincrt;
begin writeln(ord(true));
writeln(ord(false));
end.
writeln(ord(false));
end.
Hasilnya: 1 0 3.2.
Tipe Data
|
Ukuran Tempat
|
Boolean
|
1 byte
|
WordBool
|
2 byte
|
Longbool
|
3 byte
|
2.Tipe Data Terstruktur
tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis array, tetapi karena string memiliki kekhasan tersendiri sebagai array dari karakter maka penulis perlu memberikan penjelasan tersendiri
a. Tipe Data String
merupakan suatu data yang menyimpan array (larik), sebagai contoh 'ABCDEF' merupakan sebuah konstanta string yang berisikan 6 byte karakter. Ukuran Tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan jumlah elemen 1 s/d 255. String dideklarasikan dengan string [ konstanta ] atau string. Bila ukuran string tidak didefinisikan maka akan banyak memakan ruang, karena ukuran string menyesuaikan dengan defaultnya. Misalkan
var kata: string [20]; atau var kata: string; karena string merupakan array dari karakter. Maka kata[1] merupakan karakter pertama dari string, kemudian kata[2], merupakan elemen kedua, dst.Contoh:
var kata: string [20]; atau var kata: string; karena string merupakan array dari karakter. Maka kata[1] merupakan karakter pertama dari string, kemudian kata[2], merupakan elemen kedua, dst.Contoh:
Program hal_string;
Uses wincrt;
var s : string;
begin s:='Hello';
writeln(s);
writeln('panjang dari string adalah: ',ord(s[0]));
end.
Karakter nol merupakan karakter yang menyatakan panjang string. Sehingga ord(s[0]) menyatakan panjang dari string tersebut. Panjang string juga bisa dinyatakan sebagai length(s).Uses wincrt;
var s : string;
begin s:='Hello';
writeln(s);
writeln('panjang dari string adalah: ',ord(s[0]));
end.
2.PROSEDUR STANDAR
Prosedur adalah
suatu program terpisah dalam
blok sendiri yang berfungsi sebagai subprogram (program
bagian).
PROGRAM Judul-program;
PROCEDURE Judul-prosedur;
BEGIN
END;
BEGIN
END
3.IDENTIFIER
Identifier merupakan sebuah kata yang digunakan sebagai nama atau sebutan terhadap sesuatu didalam program. Pemakai dapat mendefinisikan sendiri suatu nama sebagai identifier.
identifier ini terdiri atas :
- Identifier Standar, yaitu identifier yang telah didefinisikan oleh bahasa pascal.
Contoh dari Identifier standar ini antara lain:
ABS LN
ARCTAN ODB
BOOLEAN PRED
CHAR ROUND
CHR READ
COS READLN
EOF SQR
EOLN SQRT
EXP SUCC
Dan masih banyak lagi.
- Identifier Non Standar; yaitu identifier yang didefinisikan oleh pemakai bahasa pascal; misalnya;
- nama suatu program
- nama suatu konstanta
- nama suatu variabel
- nama suatu procedure
Identifier ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
- terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf. Huruf besar dan huruf kecil dianggap sama.
- Tidak boleh mengandung blank.
- Tidak boleh mengandung simbol-simbol khusus, kecuali garis bawah.
- Panjangnya bebas, tetapi hanya 63 karakter pertama yang dianggap signifikan.
Contoh :
Identifier
|
Keterangan
|
| GajiKaryawan | Benar |
| No_Mhs | Benar |
| P3K | Benar |
| 1X | Salah, karakter pertama harus huruf |
| A&B | Salah, tidak boleh mengandung simbol khusus |
| A B | Salah, tidak boleh mengandung blank |
4.PROCEDURE AND FUNCTION
Procedure
Procedure adalahsuatu program yang terpisah dalam blok tersendiri yang berfungsi sebagai subprogram. Penggunaan prosedur diawali dengan kata cadangan procedure dalam bagian deklarasi prosedur. Pemanggilan prosedur dapat dilakukan dengan menggunakan judul prosedur.
Procedure adalahsuatu program yang terpisah dalam blok tersendiri yang berfungsi sebagai subprogram. Penggunaan prosedur diawali dengan kata cadangan procedure dalam bagian deklarasi prosedur. Pemanggilan prosedur dapat dilakukan dengan menggunakan judul prosedur.
Bentuk umum:
Procedure nama_procedure(parameter);
Deklarasi variabel,label,…dll;
Begin
Statement procedure;
………………………….
………………………….
End;
Procedure nama_procedure(parameter);
Deklarasi variabel,label,…dll;
Begin
Statement procedure;
………………………….
………………………….
End;
Contoh program
Uses crt;
Procedure hitungluas(p,l:integer);
Var
ls:integer;
begin
ls:=p*l;
Writeln(‘Luas: ‘, ls);
End;
Procedure hitkeliling(pp,ll:integer);
Var
Kel:integer;
Begin
Kel:=(2*pp)+(2*ll);
Writeln(‘Keliling: ‘,kel);
End;
Var
Pj,lbr:integer;
begin
clrscr;
write(‘Masukan panjang : ‘);readln(pj);
write(‘Masukan lebar : ‘);readln(lbr);
writeln;
hitungluas(pj,lbr);
hitkeliling(pj,lbr);
readln;
end.
Uses crt;
Procedure hitungluas(p,l:integer);
Var
ls:integer;
begin
ls:=p*l;
Writeln(‘Luas: ‘, ls);
End;
Procedure hitkeliling(pp,ll:integer);
Var
Kel:integer;
Begin
Kel:=(2*pp)+(2*ll);
Writeln(‘Keliling: ‘,kel);
End;
Var
Pj,lbr:integer;
begin
clrscr;
write(‘Masukan panjang : ‘);readln(pj);
write(‘Masukan lebar : ‘);readln(lbr);
writeln;
hitungluas(pj,lbr);
hitkeliling(pj,lbr);
readln;
end.
Function
Blok pada function hampir sama dengan blok pada procedure, hanya pada function harus dideklarasikan dengan tipe dari function tersebut yang merupakan tipe hasil dari function itu sendiri. Sehingga dikatakan function dapat mengembalikan nilai.
Contoh program function :
Uses crt;
Function faktor(bilangan :integer) : real;
Begin
If bilangan = 0 then faktor := 1
Else
Faktor := faktor(bilangan-1)*bilangan;
End;
Var
n : integer;
begin
clrscr;
write(‘Berapa Faktorial Dari = ‘); readln(n);
writeln(n,’ faktorial = ‘, faktor(n):9:0);
readln;
end.
Uses crt;
Function faktor(bilangan :integer) : real;
Begin
If bilangan = 0 then faktor := 1
Else
Faktor := faktor(bilangan-1)*bilangan;
End;
Var
n : integer;
begin
clrscr;
write(‘Berapa Faktorial Dari = ‘); readln(n);
writeln(n,’ faktorial = ‘, faktor(n):9:0);
readln;
end.
5.WHILE DO REPEAT UNTIL
Perbedaan WHILE DO dengan REPEAT UNTIL :
1. tak pada pengujian kondisi.
Paling sedikit statemen-statemen dalam repeat until diproses sekali, karena seleksi kondisi ada pada statemen until yang terletak dibawah.
Pada while do paling sedikit dikerjakan nol kali, karena seleksi kondisi ada pada statemen while yang terletak diatas, sehingga
apabila kondisi tidak terpenuhi maka tidak akan masuk ke dalam lingkungan perulangannya.
2. REPEAT UNTIL mengulang pernyataan selama kondisi belum terpenuhi sedangWHILE DO mengulang pernyataan selama kondisi masih terpenuhi.
3. Pada repeat until dapat tidak menggunakan blok statemen (BEGIN dan END) untuk menunjukan batas perulangannya, karena batas perulangannya sudah ditunjukkan oleh repeat sampai dengan until. Sedangkan WHILE DO harus menggunakan blok statemen (BEGIN dan END).
Contoh
Var
I:Integer;
Begin
I:=0;
While I<5 Do
Begin
Writeln(I);
I:=I+1;
End;
End.
Bila program dijalankan akan menghasilkan:
0
1
2
3
4
Penjelasan:
Perulangan dari while akan terus menerus dikerjakan bila kondisinya masih
benar. Dalam hal ini kondisinya adalah I dan bila nilai I kurang dari 5, berarti
kondisi di dalam While masih terpenuhi dan perulangan akan selesai setelah
nilai I lebih besar atau sama dengan 5.
6.KONDISI IF
IF Sederhana
Bentuk paling sederhana dari pernyataan kondisional dalam setiap bahasa adalah if - then. Contoh:
if (a>b) then writeln(“A lebih besar dari B”);
bagian setelah if disebut dengan bagian kondisi dan bagian setelah then adalah bagian aksi. Jika aksi lebih dari satu instruksi maka bisa dikelompokkan dalam blok begin end. Seperti ini:
if (a>b) then
begin
writeln(“Kesimpulan:”);
writeln(“A lebih besar dari B”);
end;
IF dengan ELSE
Selain if - then, ada bentuk kondisional lain yaitu if - then - else. Kita bisa mengubah instruksi
semacam ini:
if (a>b) then writeln(“A lebih besar dari B”);
if (a<=b) then writeln(“A kurang dari atau sama dengan B”);
menjadi:
if (a>b) then writeln(“A lebih besar dari B”) else (“A kurang dari atau sama dengan B”);
Bagian else akan dieksekusi jika bagian kondisi tidak dipenuhi, atau dengan kata lain, bagian else dieksekusi jika kondisi yang terjadi adalah komplemen dari kondisi di bagian if.
Perhatikan: untuk memperjelas program, sebaiknya semua instruksi if yang memiliki else ditulis dengan komentar setelah else (untuk menjelaskan kondisi apa yang ditangani oleh else kepada pembaca program) seperti ini:
if (a>b) then
begin
writeln(“A lebih besar dari B”);
end else (* a<= b *)
begin
(“A kurang dari atau sama dengan B”);
end;
IF untuk banyak kondisi
Instruksi if boleh digabung dengan banyak instruksi if menangani kondisi yang kompleks (banyak kondisi dan banyak aksi), seperti ini:
if (kondisi_1) then
begin
aksi1;
end
else if (kondisi_2) then
begin
aksi2;
end else (* kondisi 1 dan 2 tidak dipenuhi*)
begin
aksi_n;
end.
Case untuk banyak aksi
Selain IF, ada bentuk analisa kasus yang digunakan untuk menangani banyak kondisi yang ada dalam bentuk (a adalah suatu ekspresi yang menghasilkan tipe enumerasi, dan k1 .. kn adalah konstanta):
if (a = k1 ) then
begin
aksi1;
end else if (a = k2) then
begin
aksi2;
end else if (a=k3) then
begin
aksi3;
end else
begin
Aksi_n;
end;
7.PERULANGAN FOR
Statement For
Perulangan dengan statement For digunakan untuk mengulang statement atau suatu blok statement berulang kali. Perulangan dengan statement For dapat berupa perulangan positif dan perulangan negatif.
Perulangan For Positif untuk Statement For-To. Penulisan sintaknya yaitu
For (Var):=Kondisi1 To Kondisi2 Do (Statament); Contoh:
Program coba;
Uses Wincrt;
Var
I:Integer;
Begin
For I:=1 to 5 do Writeln(‘I Love Pascal’);
End.
Perulangan For Negatif untuk Statement For-Downto. Penulisan sintaknya yaitu
For (Var):=Kondisi1 Downto Kondisi 2 Do (Statement); contoh:
Program coba;
Uses Wincrt;
Var
I:Integer;
Begin
For I:=5 Downto 1 do Writeln(‘I Love Pascal’);
End.
sumber:
http://materikuliah.blogspot.com/2007/10/type-data-dalam-pascal.html
http://tid3ustj.wordpress.com/2011/11/12/konsep-tipe-data-operator-dan-identifier-dalam-pascal/
http://bimosakti15.wordpress.com/2013/04/26/procedure-dan-function-pada-pascal/
http://polsqu.blogspot.com/2013/01/while-do-dan-repeat-until.html
http://pemrogramanmudah.blogspot.com/p/pascal-pengguna-kondisi-if.html
http://coretan-pencil.blogspot.com/2013/02/program-perulangan-pada-pascal.html
SUKSES SELALU^^

0 komentar:
Posting Komentar