Berisi Informasi Tentang Teknologi Informasi Dan Komunikasi

Konsep Tipe Data




Bahasa Pemrograman PASCAL

Pascal , merupakan bahasa pemrograman tingkat tinggi.
Pascal dirancang oleh Prof. Niklaus Writh (Technical University di Zurich, Switzerland) pada tahun 1971
Nama Pascal diambil sebagai penghargaan kepada Blaise Pascal (ahli matematika dan philosopi dari Peancis).

Pembagian Tipe Data:
1. Tipe Data Sederhana (Simple Type)

Disebut juga sebagai tipe data skalar, yakni bahwa dalam sebuah perubah hanya dimungkinkan untuk menyimpan sebuah nilai data, yakni bahwa tipe data skalar menunjukkan untuk data tersebut nilainya terbentuk menurut suatu urutan tertentu. Tipe data sederhana terbagi menjadi:

A. Tipe Ordinal (berurutan)

adalah sebuah subset dari tipe data sederhana. Semua tipe sederhana disebut sebagai data dengan tipe ordinal kecuali tipe real. Dalam bahasa pascal, tipe data skalar menunjukkan bahwa untuk data tersebut nilainya terbentuk menurut urutan tertentu, yaitu nilainya ada dalam urutan.


Karakteristik tipe Ordinal adalah
  • Merupakan Himpunan Berurutan (ordered set) → nilai dari tipe data ordinal memiliki nilai yang berurutan
  • Memiliki Fungsi standard ORD/Ordinalitas (digunakan untuk menghasilkan nilai urutannya.)
  • Memiliki Fungsi standard PRED/Predecessor (digunakan untuk menghasilkan nilai urutan sebelumnya.). Jika diterapkan pada nilai pertama akan menyebabkan error.
  • Memiliki Fungsi standard SUCC/Successor(digunakan untuk menghasilkan nilai urutan sesudahnya). Jika diterapkan pada nilai terakhir akan menyebabkan error.

Contoh Program:

uses crt;type
Colors = (MERAH,BIRU,HIJAU);
begin
clrscr;
Writeln(‘BIRU mempunyai nilai ordinal ‘,Ord(BIRU));
Writeln(‘kode ASCII dari “c” adalah ‘, Ord(‘c’), ‘ desimal’);
writeln;
Writeln(‘predecessor dari 5 adalah ‘,Pred(5));
Writeln(‘successor dari 10 adalah ‘,Succ(10));
if Succ(MERAH) = BIRU then
Writeln(‘DALAM TIPE Colors ,MERAH merupakan ‘,
‘predecessor dari BIRU.’);
readln;
end.
HASIL :BIRU mempunyai nilai ordinal 1
kode ASCII dari “c” adalah 99 desimal
predecessor dari 5 adalah 4
successor dari 10 adalah 11
DALAM TIPE Colors ,MERAH merupakan predecessor dari BIRU.


Macam dari tipe ordinal adalah:

a. Integer tipe data yang digunakan untuk menyimpan bilangan bulat (tidak memiliki titik desimal)
Ada lima tipe data yang termasuk dalam kelompok ini, yaitu integer, short int, long int, byte dan word.

  Tipe                         Jangkauan                        Ukuran
Shortint                       128…127                       Signed 8 bit
Integer                   -32768…32767                    Signed 16 bit
Longint            -2147483648…2147483647            Signed 32 bit
Byte                              0…255                       UnSigned 8 bit
Word                           0…65535                      UnSigned 16 bit



b. Boolean → adalah tipe data yang hanya mempunyai dua nilai, yaitu BENAR (TRUE) dan SALAH (FALSE). Operator yang digunakan adalah AND, OR atau NOT.
c. Char → tipe data yang digunakan untuk menyimpan data alfanumeris. Dalam program Pascal, nilai data tipe char ditulis diantara tanda petik, seperti: ‘A’, ‘Z’, ’8′, ‘*’, dsb. Ada empat fungsi yang telah didefinisikan dapat digunakan untuk memanipulasi data tipe char, yaitu:
Fungsi ordinal, ORD(kar), dan kar adalah adalah data tipe char yang nilai ORD(kar) adalah angka urutan dalam kode ASCII yang digunakan untuk melambangkan karakter tersebut. Sebagai contoh ORD(‘A’) adalah 65.
Fungsi karakter, CHR(I) dengan I bilangan bulat positif, merupakan kebalikan dari fungsi ORD. Nilai yan diperoleh merupakan karakter ASCII yang dinyatakan dengan urutan ke I, contohnya: CHR(65) adalah ‘A’
Fungsi pendahulu, PRED(kar), dengan Kar adalah data tipe char dimana nilai PRED(kar) adalah karakter yang dalam urutannya mendahului kar. Contoh:PRED(‘B’) adalah ‘A’
Fungsi penerus, SUCC(kar) dengan nilai SUCC(kar) adalah karakter yang dalam ururtannya sesudah kar. Contoh: SUCC(‘B’) adalah ‘A’

d. Terbilang → digunakan untuk memberi nama pada beberapa nilai tertentu. (Tipe data yang didefinisikan sendiri oleh pembuatnya → dikenal juga dengan tipe data enumerated)

Contoh:

Type
Hari = (Minggu, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu)


e. Sub Jangkauan → digunakan untuk mendeklarasikan tipe yang berada pada jangkauan tertentu. Pada dasarnya tipe subjangkauan hampir sama dengan tipe bilangan bulat, bedanya kita bebas menentukan jangkauan dari tipe ini, misalnya dari 1 sampai 100.

Contoh:

Type
Batas = 0 .. 100


B. Tipe Real
Adalah tipe data yang menggunakan menyimpan bilangan real / pecahan.

Terdapat 5 macam data pada tipe real, yaitu: real, single, double, extended dan comp.

Tipe data                        Jangkauan                      Digit penting                    Ukuran
Real                  2.9 * 10-39 … 1.7 * 1038              11-12                          6 byte
Single                1.5 * 10-45 … 3.4 * 1038                7-8                            4 byte
Double            5.0 * 10-324 … 1.7 * 10308            15-16                          8 byte
Extented          3.4 * 10-39 … 1.1 * 104932            19-20                        10 byte
Comp                    -263+1 … 1063-1                      19-20                          8 byte

Operator matematika yang digunakan adalah +, -, *, /.Penggunaan tipe data real ini adalah dalam perhitungan matematika, sains dimana derajat ketelitian sangat diperhatikan.

2. Tipe STRING

adalah tipe data yang digunakan untuk menyimpan data yang berupa gabungan dari beberapa karakter, seperti: ‘Pascal’, ‘Logika dan Algoritma’, dsb. Besarnya adalah antara 1 sampai dengan 255 karakter.

Bentuk umum penulisan tipe data ini adalah:

Type
Pengenal = String[panjang];
dengan:
Pengenal = nama tipe data
Panjang = bilangan bulat yang menunjukkan jumlah karakter

Sebagai contoh:

Type
Kata = String[50]
Var
Nama1, Nama2 : Kata;


OPERASI STRING
Operasi string terbagi mencadi dua macam, yaitu:
A. Prosedur Standar

Prosedur-prosedur standar pada operasi string ada beberapa macam, yaitu:

# DELETE

→ Berfungsi menghapus sebagian karakter dari sebuah string.

Sintaks: DELETE (S,Index,Count)

Keterangan:
S       = String
Index = Posisi awal karakter yang akan dihapus
Count = Banyaknya karakter yang akan dihapus

Contoh:

S = ‘BINA SARANA INFORMATIKA’
DELETE (S,5,7)


hasilnya adalah: ‘BINA INFORMATIKA’
Perlu diperhatikan bahwa spasi juga dihitung sebagai satu karakter.

# INSERT

→ Berfungsi menyisipkan satu atau beberapa karakter kedalam sebuah string.

Sintaks: INSERT (Source, Var S, Index)

Keterangan:

Source     = Sumber string untuk disisipkan (string)
Var S       = String tujuan yang akan disisipi oleh string Source (string)
Index       = posisi mulai (integer)

Contoh:

S = ‘LOGIKA’
T = ‘ALGORITMA’
INSERT (‘ALGO’,S,3)
INSERT(T,S,1)

# STR

Sintaks: Str (N [:lebar [:desimal]],var S : string);

→ Digunakan untuk merubah nilai numerik (ditunjukkan oleh nilai N) menjadi nilai string (ditunjukkan oleh pengenal variabel S). Nilai N dapat berupa bilangan real atau integer. Nilai lebar menunjukkan format panjang dari nilai utuh dan nilai desimal menunjukkan format dari panjang nilai dibelakang koma.

Keterangan :
N = data tipe integer atau real
S = data tipe string.

Contoh:

N = 1234
STR (N,S)
STR(N:8,S)


# VAL

Sintaks: VAL (S:String,N,PosisiSalah)

→ Digunakan untuk mengkonversi suatu nilai string menjadi nilai numerik. Variabel S harus berisi angka atau tanda plus/minus bila tidak berarti salah dan letak kesalahannya ditunjukkan oleh nilai PosisiSalah. Nilai dari PosisiSalah akan nol jika tidak terjadi kesalahan.

Contoh:

S = ‘-123′
VAL (S,N,PosisiSalah)
S = ‘123.A5′
VAL (S,N,PosisiSalah)


B. Fungsi Standar

# COPY

Sintaks :

COPY (s : string, index : integer, count : integer) : string

Digunakan untuk menyalin sejumlah karakter (jumlah karakter yang disalin ditunjukkan oleh nilai count) mulai dari posisi yang ditunjukkan oleh nilai integer index dari nilai string yang ditunjukkan oleh s.

Contoh:

S = ‘INFORMATIKA’
P = COPY (S,1,4)
Q = COPY (S,6,4)


# CONCAT

Sintaks :

CONCAT (s1 [,s2, ... , sn] : string) : string

Digunakan untuk merangkai beberapa nilai string yang ditunjukkan oleh nilai string s1, s2, …. , sn

Contoh:

S = ‘INFORMATIKA’
P = ‘BINA’
Q = ‘SARANA’
V = CONCAT (P,Q,S)
W = CONCAT(P,’_',Q,’_',S)


# POS
Sintaks :

POS (Substr : string, s: string) : byte

Digunakan untuk mencari posisi letak dari suatu nilai string (ditunjukkan oleh Substr) yang ada didalam nilai string yang lain (ditunjukkan oleh s). Nilai yang dihasilkan adalah berupa nilai byte yang menunjukkan letaknya. Bila bernilai nol berarti nilai string yang dicari tidak ada.

Contoh:

S = ‘INFORMATIKA’
P = POS(‘ATI’,S)
Q = POS(‘FORMASI’,S)

# LENGTH

Sintaks :

LENGTH (s : string) : integer

Digunakan untuk menghitung panjang atau jumlah karakter yang ada dinilai string yang ditunjukkan oleh s. Hasil dari fungsi ini adalah nilai numerik integer positif.

Contoh:

S = ‘INFORMATIKA’
Q = ‘BINA’
P = LENGTH(S)
R = LENGTH(CONCAT(S,Q))

3. Tipe Struktur

Pada tipe ini setiap perubah dapat menyimpan lebih dari sebuah nilai data yang masing-masing nilai data disebut komponen. Karakteristik tipe data terstruktur ini adalah ditentukan berdasarkan cara penstrukturan dan tipe masing-masing komponen. Ukuran tipe terstruktur dalam bahasa pemrograman Turbo Pascal maksimum 65520 byte. Pada tipe ini terdapat empat buah tipe data terstruktur, yaitu larik, rekaman, himpunan, dan berkas

a. Tipe larik(array tipe)

adalah tipe terstruktur yang mempunyai komponen dalam jumlah yang tetap dan setiap komponen mempunyai tipe data yang sama. Posisi masing-masing komponen dalam larik dinyatakan sebagai nomor index.

Bentuk umum penulisan:

Type pengenal = array[tipe index] of tipe;

dengan

Pengenal = nama tipe data

Tipe index = tipe data untuk tiap nomor index

Tipe = tipe data komponen

Parameter tipe index akan menentukan banyaknya komponen larak/array tersebut, sebagai contoh:

Type vek = array[1..100] of integer;

Akan menunjukkan bahwa vek adalah tipe data yang berupa larik/array yang komponennya bertipe integer dan banyaknya adalah 100 buah. Dekalarasi yang disebutkan diatas disebut dengan deklarasi array/larik dimensi satu atau dapat disebut juga dengan vektor, sedangkan untuk larik/array dimensi banyak dapat dilihat pada conoth deklarasi berikut:

Type Tbl = array[1..100 ] of array [1..5] of real; atau

Type Tbl = array[1..100,1..5] of real;

b. Tipe record

adalah kumpulan data yang setiap elemennya bisa mempunyai tipe data yang berbeda satu sama lainnya. Pada larik, semua elemen harus bertipe sama.

c. Tipe set/himpunan

adalah kumpulan objek yang mempunyai tipe data yang sama dan urutan penulisannya tidak diperhatikan. Setiap objek dalam suatu set disebut anggota atau elemen himpunan.

d. Tipe file atau berkas

adalah kumpulan sejumlah komponen yang bertipe sama yang jumlahnya tidak tertentu dan biasanya tersimpan dalam suatu media penyimpanan luar.

e. Tipe pointer

adalah fasilitas yang memungkinkan pemakai menggunakan perubah yang bersifat dinamis

f. Tipe terbilang atau enumerated, disebut demikian karena semua nilai yang ada disebut dengan cara satu persatu.

Contoh:

Type TOKO = (baru,ramai,sukses,rapi);
TypeHARI =(minggu,senin,selasa,rabu,kamis,jum’at,sabtu,minggu);
TypeBULAN =(jan,feb,mar,apr,mei,jun,jul,ags,sep,okt,nop,des);
typeSEKOLAH=(tk,sd,smp,sma,universitas);

Leave a Reply