Pages

Wednesday, February 23, 2011

tugas SOD-2

ARRAY DAN RECORD


Sebuah array dapat dikatakan sebagai suatu himpunan terurut dengan elemen-elemen homogen. Terurut, dimaksudkan bahwa elemen pertama, elemen kedua, dst masing-masing dapat diidentifikasi. Sedangkan homogen berarti masing-masing elemen tersebut mempunyai tipe data yang sama.

    Array dapat dikelompokkan atas 2 bagian, yaitu :
      1. Array satu dimensi.
      2. Array multi dimensi.

Wednesday, February 16, 2011

tugas SOD 2

         TYPE DATA & TIPE STRUKTUR DATA

Tipe data yang dikenal dalam bahasa pascal antara lain :

·      Tipe data sederhana / Jenis data yang standar (Dasar)
1.      Integer
2.      Real
3.      Karakter
4.      Boolean

·         Tipe data non standar (user defined)
1.    Enumerated
2.    Sub-range

·         Tipe data berstuktur
1.        Array
2.        Record
3.        Set
4.        File

·         Jenis data Pointer

INTEGER


Jenis data ini merupakan nilai bilangan bulat, yang  terdiri atas integer positif, integer negatif dan nol. Pada TURBO PASCAL jenis data ini di bagi atas beberapa bagian.  (lihat tabel 1)

Tabel 1. Jenis data integer
Tipe
Ukuran memori
(dalam byte)
Jangkauan nilai
BYTE
1
0..255
SHORTINT
1
-128..127
INTEGER
2
-32768..32767
WORD
2
0..65535
LONGINT
4
-2147483648..2147483647

Operator Integer terdiri atas :  + , - , * , DIV dan MOD

Var
                 Jumlah : byte;
Begin
               Jumlah := 200;
                WriteLn(‘Nilai JUMLAH = ‘,Jumlah);
End.
Hasilnya bila dijalankan :

          Nilai JUMLAH = 200


REAL


Penulisan untuk jenis data ini selalu menggunakan titik desimal. Nilai konstanta numerik real berkisar dari 1E-38 sampai dengan 1E+38 dengan mantissa yang signifikan sampai dengan 11 digit. E menunjukkan nilai 10 pangkat. Nilai konstanta numerik real menempati memori sebesar 6 byte.

Contoh :
123.45
12345.  ® salah, titik desimal tidak boleh dibelakang
12E5
12E+5
-12.34
.1234  ® salah, titik desimal tidak boleh dimuka

 Pada TURBO PASCAL, jenis data ini dibedakan ( lihat tabel 2.)


Tabel 2. Jenis data Real

Tipe
Ukuran memori
(dalam byte)
Jangkauan nilai
Digit signifikan
SINGLE
4
1.5x10E-45 .. 3.4x10E38
7-8
DOUBLE
8
5.0x10E-324 .. 1.7x10E308
15-16
EXTENDED
10
1.9x10E-4951 .. 1.1x10E4932
19-20
COMP
8
-2E+63+1 .. 2E+63-1
19-20

Operator untuk jenis data ini terdiri atas : + , - , * dan /

KARAKTER


Yang dimaksud dengan jenis data ini adalah karakter tunggal atau sebuah karakter yang ditulis diantara tanda petik tunggal, seperti misalnya ‘A’, ’a’, ’!’, ’5’ dsb.

Dasarnya adalah ASCII CHARACTER SET.

Misalnya : 032 pada tabel ASCII CHARACTER SET menunjukkan karakter.

                   Blank.
          033                        !
          048                         0
076                         L
          dst

STRING


Nilai data string merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai data string akan menenpati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Bila panjang dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap panjangnya adalah 255 karakter.

Contoh :
Var
          Kampus : string[10];
Begin
          Kampus := ‘Gunadarma’;
Write(Kampus);
End.


 

BOOLEAN


Jenis data ini mempunyai nilai TRUE atau FALSE.

Operator untuk jenis data ini adalah :
1.    Logical Operator, yaitu : NOT, AND dan OR
2.    Relational Operator, yaitu : >, <, >=, <=, <> dan =


JENIS DATA NON-STANDARD (USER DEFINED)

ENUMERATED.
Jenis data ini terdiri atas barisan identifier yang terurut dimana setiap identifier tersebut dianggap sebagai suatu individual data item (elemen data yang berdiri sendiri).

Pada saat mendeklarasikan jenis data ini kita harus menuliskan semua elemen-elemennya.

Bentuk umum deklarasinya adalah :

TYPE nama = (data_item_1, data_item_2, ……., data_item_n);

Contoh :

TYPE hari = (sen,sel,rab,kam,jum,sab,ming);

TYPE warna = (red,blue,green,yellow,black,white);

Setelah jenis data ini dideklarasikan, maka selanjutnya kita dapat mendeklarasikan suatu variabel yang berjenis data sama dengan jenis data ini.

Misalnya :
              TYPE nama_hari = (sen,sel,rab,kam,jum,sab,ming);
              VAR libur : nama_hari;

Fungsi standar yang dapat digunakan pada jenis data ini adalah :

PRED, SUCC dan ORD

Misalnya :

     PRED (sel) = sen
     SUCC (sen) = sel
     ORD (sen) = 0
     ORD (sel) = 1

      dsb

SUB-RANGE.

Jenis data ini berupa range dari suatu kumpulan data yang mempunyai urutan..

Bentuk umum deklarasinya adalah :

     TYPE nama = data_item_pertama .. data_item_terakhir;

Contoh :
          TYPE jam_kuliah = 1 .. 10;
tanggal = 1 .. 31;
abjad = ‘A’ .. ‘Z’;

          TYPE bulan = (jan,feb,mar,apr,mei,jun,jul,agt,sep,okt,nov,des);
hari = (sen,sel,rab,kam,jum,sab,ming);
ata = agt .. jan;
pta = feb .. jun;
hari_kerja = sen .. jum;

 



 

 

 






TANDA OPERASI



Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori,

1.    Assignment operator.
2.    Binary operator.
3.    Unary operator.
4.    Bitwise operator.
5.    Relational operator.
6.    Logical operator.
7.    Address operator.
8.    Set operator.
9.    String operator.

Assignment operator
Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=).

Contoh :
                   A:=B;

Binary operator
          Digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan dengan nilai tipe data integer dan real.

Operator

Operasi
Tipe operand
Tipe hasil
*
Perkalian
real,real
integer,integer
real,integer
real
integer
real
DIV
Pembagian bulat
integer,integer
integer
/
Pembagian real
real,real
integer,integer
real,integer
real
real
real
MOD
Sisa pembagian
integer,integer
integer
+
Pertambahan
real,real
integer,integer
real,integer
real
integer
real
-
pengurangan
real,real
integer,integer
real,real
real
integer
real

Contoh :
                   15*5             hasilnya         75
                   20/3             hasilnya         6.6666666667E+00
                   20 div 3         hasilnya         6
                   20 mod 3      hasilnya         2

Unary operator

Operator ini hanya menggunakan sebuah operand saja. Dapat berupa unary minus dan unary plus. Unary minus digunakan untuk menunjukkan nilai negatif, baik pada operang numerik real maupun integer. Unaru plus adalah operator untuk memberai tanda plus.

Contoh :
                   -5       +7
                   -2.5    +2.5

Bitwise operator

Digunakan untuk operasi bit per bit pada nilai integer. Terdiri dari operator NOT, AND, OR, XOR, Shl, Shr.

Relational operator

          Relational operator digunakan untuk  membandingkan hubungan antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu True atau False. Terdiri dari operator : =, <, >, <=, >=, <>


Logical operator

          Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan XOR. Operator ini bekerja dengan nilai-nilai logika, yaitu True dan False.

Set operator

          Digunakan untuk operasi himpunan.

String operator

          Digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu operator + yang digunakan untuk menggabungkan dua buah nilai string.

Contoh : 
                   Nama1 := ‘Arief ‘;
                   Nama2 := ‘Kurniawan’;
                   Nama3 := Nama1 + Nama2;

STRUKTRU DATA
Struktur Data, meliputi:
* Struktur data sederhana, misalnya array dan record.
* Struktur data majemuk, yang terdiri dari:
Linier : Stack, Queue, sertaList dan Multilist
Non Linier : Pohon Biner dan Graph
Pemakaian struktur data yang tepat didalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.
Struktur data yang standar yang biasanya digunakan dibidang informatika adalah:
* List linier (Linked List) dan variasinya
* Multilist
* Stack (Tumpukan)
* Queue (Antrian)
* Tree ( Pohon)
* Graph ( Graf )
REVIEW RECORD (REKAMAN)
Disusun oleh satu atau lebih field. Tiap field menyimpan data dari tipe dasar tertentu atau dari tipe bentukan lain yang sudah didefinisikan sebelumnya. Nama rekaman ditentukan oleh pemrogram.
Rekaman disebut juga tipe terstruktur
Contoh :
1.    type Titik : record jika P dideklarasikan sebagai Titik maka mengacu field pada P adalah P.x dan P.y.
2.     Didefinisikan tipe terstruktur yang mewakili Jam yang terdiri atas jam (hh), menit (mm) dan detik (ss), maka cara menulis type Jam adalah :
type JAM : record
mm : integer, {0…59}
ss : integer {0…59}>
Jika J adalah peubah (variabel) bertipe Jam maka cara mengacu tiap field adalah J.hh, J.mm dan J.ss
Terjemahan dalam bahasa C :
1.    type Titik : record
diterjemahkan menjadi :
typedef struct { float x;
float y;
} Titik;
2.    type JAM : record
mm : integer, {0…59}
ss : integer {0…59}
>
Diterjemahkan menjadi :
typedef struct
{ int hh; /*0…23*/
int mm; /*0…59*/
int ss; /*0…59*/
} Jam;
Tipe-tipe data yang berlaku:
Tipe Data Sederhana
·         Integer
·          Boolean
·         Char
·         Subrange
·         Terbilang
·         Real
Tipe Integer
Tipe data ini digunakan untuk menyatakan bilangan bulat karena tidak mempunyai titik decimal sehingga tidak diperbolehkan menggunakan karakter koma antara dua bilangan.
Tipe Data String
Data yang bertipe string adalah data yang berisi sederetan karakter yang banyaknya karakter bisa berubah-ubah sesuai kebutuhan, yaitu dari 1 sampai 255 karakter. Tipe data string yang tidak dinyatakan panjang karakternya dianggap mempunyai 255 karakter.
Contoh String
Bentuk umum dari deklarasi tipe string adalah :
·         Type pengenal =string[panjang];
Dengan
·          Pengenal : nama tipe data
·         Panjang : bilangan bulat yang menyatkanbanyaknya karakter
Contoh
Type nama = string[30]
Tipe Data Terstruktur

Dalam tipe data tersetruktur setiap perubah bisa menyipan lebih dari sebuah nilai data. Masing-masing nilai data disebut komponen. Karakteristik data bertipe tersetruktur ditentukan berdasarkan cara penstrukturan dan tipe masing-masing komponen.
Anggota Tipe Data terstruktur
Didalam tipe data ini ada tipe data :
·         larik/array
·         Record
·         Objek
·         File
Contoh type data pada struktur data:
1.     Tipe data Char dan String
Ini merupakan tipe data dasar, tipe data ini didefinisikan pada deklarsi var dibagian algoritma/program.
Example : Var Nama : String
Nilai : Char
Keterangan :
Nama merupakan sebuah variabel didefinisikan sebagai variabel bertipe string, maksudnya pada variabel tersebut digunakan untuk menerima masukan sebuah nama yang terdiri dari sekumpulan huruf, dapat berupa huruf besar, kecil, atau campuran kedua-duanya.
Nilai, didefinisikan sebagai variabel yang bertipe data char, maksudnya variabel tersebut hanya dapat digunakan untuk memasukkan sebuah huruf dari huruf besar, seperti A, B, C,.. atau huruf kecil, a, b, c, ….
2.    Tipe data Boolean
Tipe data ini digunakan untuk pengambilan keputusan dalam operasi logika. Terdiri dari true disimbolkan ‘T’ dan False yang disimbolkan ‘F’. Ketika kita ingin mendapatklan hasil yang valid/pasti, kita menggunakan tipe data boolean untuk memperoleh keputusan dalam suatu penyelesaian yang pasti.
3.    Tipe Data Integer
Merupakan tipe data bilangan bulat.
4.    Tipe Data Real
Merupakan tipe data bilangan pecahan seperti real, single, double, comp, extend.
5.    Tipe Data Subrange
Merupakan tipe data bilangan yang punya jangkauan nilai tertentu sesuai dengan definisi pada pemrogram.
Example:
Type Variabel=Nilai_awal…Nilai_akhir
6.    Tipe Data Enumerasi
Merupakan tipe data yang memiliki elemen-elemen tertentu yang disebut satu/satu dari bernilai konstanta integer sesuai dengan urutannya. Pada tipe data ini elemen masukan diwakili oleh suatu nama variable yang ditlis di dalam kurung.