MATERI MUATAN LOKAL PRODUKTIF 1
DASAR LOGIKA DAN ALGORITMA

Sub Kompetensi : Memahami Konsep Tipe Data (dalam pemrograman bahasa Pascal)

Tujuan :
1.Siswa mengenal bahasa pascal secara singkat
2.Siswa mengetahui macam-macam tipe data dalam bahasa Pascal
3.Siswa dapat mengidentifikasi tipe-tipe data
4.Siswa dapat menggunakan tipe data sesuai dengan fungsinya
5.Siswa dapat mengevaluasi penggunaan tipe data yang tidak tepat

A.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).

B.Macam-Macam Tipe Data dalam Bahasa Pascal
1.Tipe Data Sederhana (Simple Type)
Disebut juga sebagai tipe data skalar, yakni bahwa dalam sebuah perubah hanya dimungkinkan untuk menyimpan sebuah nilai data. Tipe data sederhana terbagi menjadi:
a)Tipe Ordinal (berurutan)
1)Integer
adalah 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.


2)Boolean
adalah tipe data yang hanya mempunyai dua nilai, yaitu BENAR (TRUE) dan SALAH (FALSE). Operator yang digunakan adalah AND, OR atau NOT.
3)Char
adalah 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:
a).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.
b).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’
c).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’
d).Fungsi penerus, SUCC(kar) dengan nilai SUCC(kar) adalah karakter yang dalam ururtannya sesudah kar. Contoh: SUCC(‘B’) adalah ‘A’
4)Terbilang
adalah tipe data yang digunakan untuk memberi nama pada beberapa nilai tertentu. (Tipe data yang didefinisikan sendiri oleh pembuatnya → dikenal juga dengan tipe data enumerated)
b)Tipe Real
Adalah tipe data yang menggunakan menyimpan bilangan real / pecahan. Operator matematika yang digunakan adalah +, -, *, /.Penggunaan tipe data real ini adalah dalam perhitungan matematika, sains dimana derajat ketelitian sangat diperhatikan..
Terdapat 5 macam data pada tipe real, yaitu: real, single, double, extended dan comp.


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:
Type
Pengenal = String[panjang];
dengan:
Pengenal = nama tipe data
Panjang   = bilangan bulat yang menunjukkan jumlah karakter
contoh:
Type
Kata = String[50]
Var
Nama1, Nama2 : Kata;
Tipe data String mengenal 2 operasi, yaitu prosedur standard an fungsi standar.
a.Prosedur standar
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   = ‘SELAMAT DATANG YA!’
DELETE (S,8,6)
hasilnya adalah: ‘SELAMAT YA!’
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)
STR
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.
Sintaks:  Str (N [:lebar [:desimal]],var S : string);
Keterangan :
N = data tipe integer atau real
S = data tipe string.
Contoh:
N = 1234
STR (N,S)
STR(N:8,S)

VAL
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.
Sintaks: VAL (S:String,N,PosisiSalah)
Contoh:
S = ‘-123′
VAL (S,N,PosisiSalah)
S = ‘123.A5′
VAL (S,N,PosisiSalah)

b.fungsi standar
COPY
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.
Sintaks :
COPY (s : string, index : integer, count : integer) : string
Contoh:
S = ‘INFORMATIKA’
P = COPY (S,1,4)
Q = COPY (S,6,4)

CONCAT
Digunakan untuk merangkai beberapa nilai string yang ditunjukkan oleh nilai string s1, s2, …. , sn
Sintaks :
CONCAT (s1 [,s2, ... , sn] : string) : string
Contoh:
S = ‘INFORMATIKA’
P = ‘BINA’
Q = ‘SARANA’
V = CONCAT (P,Q,S)
W = CONCAT(P,’_',Q,’_',S)

POS
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.
Sintaks :
POS (Substr : string, s: string) : byte



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

LENGTH
Digunakan untuk menghitung panjang atau jumlah karakter yang ada dinilai string yang ditunjukkan oleh s. Hasil dari fungsi ini adalah nilai numerik integer positif.
Sintaks :
LENGTH (s : string) : integer
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
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
Contoh
Type vek = array[1..100] of integer;
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);

0 komentar:

Posting Komentar