Tipe
subjangkauan merupakan tipe yang mendifinisikan jangkauan dari
nilai-nilai ordinal sebagai contoh seperti nilai-nilai ordinal char, integer.
Sala satu contoh sub jangkauan :
Type
Huruf = ‘A’ .. ’Z’ ;
Angka = ‘0’ .. ’9’ ;
Var
Inisial : Huruf ;
Nilai : Angka ;
Selain
dengan cara mendeklarasikan terlebih dahulu type data yang baru
digunakan dalam pendeklarasian variabel. Type sub jangkauan dapat
langsung dibuat pada bagian pendeklarasian variabel seperti :
Var
Nilai = ‘0’ .. ‘100’ ;
Selain
itu, Type sub jangkauan langsung dapat digunakan dalam program
misalnya menentukan inputan angka atau hurufkemudian melakukan
pemilihan, apakah setelah ada selection antara kondisi serta inputan
yang diberikan dapat membaca angka ataupun huruf.
Var
A : char ;
Begin
Write (‘ input = ‘) ; readln (A) ;
Case A of
‘a’ .. ‘z’ , ‘A’ .. ‘Z’ : write (‘Anda Input Banyak’)
Else
‘0’ .. ‘9’ : writeln (’Anda Input Angka’);
End;
End.
2) Tipe Anumerasi
Mendifinisikan sekumpulan nilai dan diberi nama dan diebut satu persatu berdasarkan nilainya.
- Pendeklarasian type Anumerasi adalah ;
Type
NamaTipe = (Nilai1,Nilai2, .. NilaiN);
Nama
pada pendeklarasian type menjadi konstanta type Anumerasi dengan
constanta tersebut mempunyai nilai ordinal mulai dari 0 dengan demikian,
nilai 1 mempunyai nilai ordinal 0, nilai 2 mempunyai nilai ordinal 1
dan seterusnya.
Contoh pendeklarasian type Anumerasi :
Type
Angka = (Nol, Satu, Dua, Tiga);
3) Type Set (Himpunan)
Merupakan termasuk tipe data yang terstruktur dan aturan pendeklarasiannya adalah :
Type
Nama Type = Set of Tipe
Jumlah nilai type tidak boleh lebih dari 256 nilai dan contohnya adalah :
Type
Angka = Set of 0 .. 9 / Huruf = Set of a .. z
4) Type String
Variabel bertype string adalah serangkaian karakter dengan panjang yang berubah dan panjang maksimalnya 1 -255.
- Pendeklarasian string (variabel yang bertype string yang akan digunakan seperti variabel lainnya harus dideklarasikan terlebih dahulu), Contohnya :
Var
Nama Variabel : String ;
Atau
Nama Variabel : String [konstanta] ;
String
dapat dianggap sebagai sebuah Array karakter harus setiap elemen
string dapat diakses dengan mengetahui indeksnya yang menyatakan urutan
karakter dalam sebuah string, Contoh :
Var
S : String ;
C1,C2 : Char ;
Begin
S := ‘Mahasiswa’ ;
C1 := S [1] ;
C2 := S [3] ;
End.
Fungsi dan Procedure Untuk Menipulasi String :
1. Length = Mengirimkan panjang String.
2. Concat = Menggabungkan 2 / lebih String menjadi 1 string.
3. Delete = Procedure untuk menghapus String.
4. Copy = Mengirimkan siting dari sebuah String.
5. Insert = Menyisipkan siting dari sebuah String.
6. Post = Mengirimkan posisi dari sebuah sub string.
ALGORITMA REKURSIF
Rekursip
adalah sebuah perulangan dan definisinya merupakan sebuah object
disebut berulang (rekursif) jika setiap object mengandung dirinya
sendiri atau didefinisikan dengan dirinya sendiri. Bis a dikatakan fungi
dan fungsinya sendiri atau fungsi yang dipakai untuk fungsinya
sendiri. Dalam Matematika definisi Rekursif sebuah fungsi adalah
definisi fungsi yang menggunakan fungsi tersebut. Dalam proses
perulangan yang terjadi dalam algoritma Rekursif harus ditentukan
sebuah kondisi kapan perulangan berhenti. Perulangan (Rekention)
memegang peranan penting dalam banyak definissi Matemika. Beberapa
contoh definisi matematika tersebut adalah bilangan asli (Natural
Number) dan fungsi factorial.
1. Bilangan Asli
- 1 adalah bilangan asli
- Suksesor bilangan asli adalah bilangan asli.
2. Fungsi faktorial, n! (untuk integer non-Negatif).
a. 0! =1
b. Jika n > 0 , maka n! = n x (n-1)
Berfikir Rekursif
Seperti
halnya perulangan, Algoritma/ hubungan rekursif memungkinkan
perulangan yang tidak akan berhenti/ tak hingga olek karena itu apabila
sebuah masalah dinyatakan dalam hubungan berulang maka kondisi
berhenti (basis atau termanation) hubungan berulang tersebut harus
jelas. Kegunaan hubungan berulang terletak pada kemampuannya yang
memungkinkan menyatakan definisi yang tak hingga dengan pertanyaan yang
hingga. Untuk memecahkan masalah menggunakan hubungan berulang harus
dibentuk.
A. Basis, yaitu kondisi berhenti rekursif. Kondisi berhenti ini harus jelas sehingga tidak terjadi perulangan yang tak hingga.
B. Definisi
rekursif yaitu untuk membuktikan sebuah definisi rekursif benar adalah
jika definisi tersebut benar untuk sebuah nilai misalnya (n-1).
Program CariFaktorial ;
Var
Angka, hasil : integer ;
Function fakt (n : integer) : integer;
Begin
If n = 0 Then
Fak := 1
Else
Fakt := n* Fakt (n-1) ;
End;
Begin
Write (‘ Masukkan angka (>=0) =’) ; readln(angka) ;
Hasil := Fakt (angka);
Writeln (angka,’! =’, hasil) ;
Readln ;
End.
PEMROSESAN FILE
File
text adalah file yang terdiri dari karakter-karakter.karakter-karakter
tersebut dapat dianggap sebagai data yang bertipe karakter, integer,
real, atau string. Tergantung kepada tipe data yang digunakan untuk
menyimpan hasil pembacaan dari file. Contoh 1:
File beristensi Txt
Program TulisAlamat ;
Var
Falamat : text ;
Begin
Assign (falamat,’D:\alamat.txt’) ;
Rewrite (falamat) ;
Writeln(falamat,’ sukirman’) ;
Writeln(falamat,’pinrang’) ;
Close (falamat) ;
Readln ;
End.
Contoh 2 :
Program baca alamat ;
Var
Falamat : text ;
Temp : string ;
Begin
Assign (falamat,’D:\Alamat,txt’);
Reset (falamat) ;
While not eof 9falamat) do
Begin
Readln (falamat, temp) do
Writeln (tempt) ;
End ;
Close (falamat) ;
End.
Contoh 3 :
Var
F : File ;
Begin
Assign (F,’D:\ Alamat.text’) ;
Erase (F) ;
End.
Contoh 4 :
Program GanjilGenap ;
Uses crt ;
Var batas : integer ;
Begin
Clrscr ;
Write (‘Batas’) ; readln(batas) ;
For a := 1 to batas do
begin
if a mod 2 then
case a of
0 : write (‘ genap ‘) ;
1 : write (‘ genap ‘) :
End ;
Readln ;
End.
STRUKTUR DATA DINAMIS
Struktur data Dinamis dapat mengecil dan dapat membesar.
Var
Contoh array : array [1 .. 100] ;
Atau
Type
Nama type pointer : ^ tipe data ;
- Untuk mendefinisikan struktur data dinamis digunakan tipe pointer
- Pointer adalah variabel yang digunakan untuk menyimpan lokasi data pada memori.
- Procedure
New Dispose digunakan untuk menggunakan variabel dengan tipe data
record harus dipesan terlebih dahulu ruang memori yang digunakan untuk
menyimpan nilai yang diacuh pada variabel tersebut. Proses ini disebut
dengan alokasi memori untuk melakukan prosesini di gunakan sebuah
procedure built-in yaitu New sesuatu yang ada pada pascal mod, mid.
Contoh :
type
Rec = record
Nilai1 : integer ;
Nilai2 : integer ;
End ;
Var
Rec1 : rec ;
Rec2 : rec ;
Rec3 : rec ;
No comments:
Post a Comment