AlgoritmaAlgoritma Pemrograman Pemrograman · TipeTipe Dasar Dasar qBilangan logika qBilangan bulat...

Post on 04-Mar-2019

243 views 0 download

Transcript of AlgoritmaAlgoritma Pemrograman Pemrograman · TipeTipe Dasar Dasar qBilangan logika qBilangan bulat...

AlgoritmaAlgoritma PemrogramanPemrogramanPertemuan Ke-3(Tipe Data dan Nama)

Rahmady Liyantanto

S1 Teknik Informatika-Unijoyo

SubSub PokokPokok BahasanBahasan

� Pendahuluan� Tipe Dasar� Tipe Bentukan� Nama

S1 Teknik Informatika-Unijoyo

PendahuluanPendahuluan

� Tipe adalah pola representasi data dalamkomputer.

� Tipe data dapat dikelompokkan menjadidua macam:

1) Tipe dasar tipe yang dapat langsungdipakai

2) Tipe bentukan hasil bentukan dari tipedasar

S1 Teknik Informatika-Unijoyo

TipeTipe DasarDasarq Bilangan logikaq Bilangan bulatq Bilangan riilq Karakterq String

S1 Teknik Informatika-Unijoyo

BilanganBilangan LogikaLogika� NamaTipe: Boolean� Domain Nilai:

q benar (true): biasanya dinyatakan dengan angka 1

q salah (false):biasanya dinyatakan dengan angka 0

� Konstanta: true dan false

� Operasiàbiasanya disebut sebagai operasi logika atau operasiboolean. Operator logika yang umum digunakan: not, and, or dan xor

� Tabel kebenaran (truth table):

S1 Teknik Informatika-Unijoyo

BilanganBilangan BulatBulat [1][1]

� NamaTipe: Integer� Domain Nilai: misal pada kompilator Turbo Pascal,

dapat direpresentasikan ke dalam lima macam tipe:

S1 Teknik Informatika-Unijoyo

BilanganBilangan BulatBulat [2][2]

� Konstanta: konstanta untuk nilai bertipe bilangan bulatharus ditulis tanpa mengandung titik desimal.

Contoh : 15, -7, 0, 677� Operasi:1) Operasi Aritmatikaàoperasi aritmatika terhadap bilangan

bulat dengan sembarang operator aritmatika menghasilkannilai yang bertipe bilangan bulat juga.Macam-macam operator aritmatika :

+ − * div mod2) Operasi Perbandingan operasi perbandingan terhadap

bilangan bulat dengan salah satu operator relasionalmenghasilkan nilai boolean (true atau false).Macam-macam operator perbandingan :

< > = ≠ S1 Teknik Informatika-Unijoyo

BilanganBilangan RiilRiil [1][1]

� NamaTipe: Real� Domain Nilai: misal pada kompilator

Turbo Pascal, dapat direpresentasikan kedalam empat macam tipe:

S1 Teknik Informatika-Unijoyo

BilanganBilangan RiilRiil [2][2]� Konstanta : untuk nilai bertipe bilangan riil harus ditulis dengan

mengandung titik desimal.

Contoh : 0.15; -7.566+E9; 0.0; 677.1

� Operasi :

1) Operasi Aritmatika operasi aritmatika terhadap bilangan riil dengansembarang operator aritmatika menghasilkan nilai yang bertipebilangan riil juga.

Macam-macam operator aritmatika :

+ − * div2) Operasi Perbandingan operasi perbandingan terhadap bilangan riil

dengan salah satu operator relasional menghasilkan nilai boolean(true atau false).

Macam-macam operator perbandingan :

< ≥ ≤ ≠ >

S1 Teknik Informatika-Unijoyo

KarakterKarakter� Nama Tipe : Char

� Domain Nilai : adalah semua huruf di dalam alfabet (‘a’..’z’, ‘A’..’Z’),angka desimal (0..9), tanda baca (‘.’, ‘:’, ‘!’, ‘?’, dan lainlain), operatoraritmetik (‘+’, ‘-‘, ‘*’, ‘/’), dan karakter-karakter khusus seperti (‘$’, ‘#’,‘@’, ‘^’, ‘~’, dan lain-lain). Daftar karakter yang lengkap dapat dilihat didalam buku-buku yang memuat tabel ASCII.

� Konstanta : konstanta untuk nilai bertipe karakter harus diapit olehtanda petik tunggal.

Contoh : ‘A’; ‘8’; ‘.’; ‘$’

� Operasi : operasi perbandingan terhadap karakter dengan salah satuoperator relasional menghasilkan nilai boolean (true atau false).

Macam-macam operator perbandingan :

< ≥ ≤ ≠ >

S1 Teknik Informatika-Unijoyo

StringString� NamaTipe : String

� Domain Nilai : adalah deretan karakter yang didefinisikan pada ranah karakter.

� Konstanta : konstanta untuk nilai bertipe string harus diapit oleh tanda petik

tunggal.

Contoh : ‘Bangkalan’; ‘ABCDE’; ‘1234’; ‘y’

� String kosong (null) adalah string yang panjangnya nol, dan dilambangkan dengan ‘’

(string kosong adalah sama dengan karakter kosong)

� Operasi :

1) Operasi Penyambungan

Operator : +

Contoh : ‘Teknik’+‘Informatika’ = ‘TeknikInformatika’

2) Operasi Perbandingan

Operasi perbandingan terhadap string dengan salah satu operator relasional

menghasilkan nilai boolean (true atau false).

Macam-macam operator perbandingan :

< ≥ ≤ ≠ >S1 Teknik Informatika-Unijoyo

TipeTipe BentukanBentukan� Tipe bentukan adalah tipe yang dibentuk (dan diberi nama)

dari satu atau lebih tipe dasar. Operasi terhadap komponenbertipe dasar dilakukan seperti yang didefinisikan pada tipedasar. Operasi terhadap keseluruhan tipe mungkindidefinisikan atau tidak.

� Dalam notasi algoritma, sebuah tipe bentukan berupakomposisi elemen dituliskan dengan notasi:

S1 Teknik Informatika-Unijoyo

type nama type < elemen1 : type1,elemen2 : type2,elemen3 : type3,.......... >

ContohContohTipeTipe BentukanBentukan [1][1]

Contoh : type Titik

{ type titik menyatakan absis dan ordinat real pada sumbu kartesian }

type Titik : record <x:real,y:real>

Jika dideklarasikan :

P : Titik { artinya : P adalah sebuahTitik }

Cara mengacu/mengakses nilai elemen yang tersimpan dalam P adalah :

P.x { menghasilkan absis bertipe real }

P.y { menghasilkan ordinat bertipe real }

� Domain nilai : <real, real>

� Konstanta : < 1.3 , 2.2 > ; < 0.01 , 100.01 >

� Operator :

Operator terhadap Titik harus dibuat

Operasi real terhadap P.x dan P.y

S1 Teknik Informatika-Unijoyo

ContohContohTipeTipe BentukanBentukan [2][2]Contoh : type Jam { type Jam menyatakan representasi jam dalam notasi hh:mm:ss

dengan hh bernilai [0..23], mm bernilai [0..59] dan ss bernilai [0..59] }

type Jam : record

<hh : integer, {0..23} { jam }

mm : integer, {0..59} { menit }

ss : integer {0..59} { detik }>

Jika dideklarasikan :

J : Jam { artinya : J adalah sebuah Jam }

Cara mengacu/mengakses nilai elemen yang tersimpan dalam J adalah :

J.hh { menghasilkan bagian jam bertipe integer {0..23} }

J.Mm { menghasilkan bagian menit bertipe integer {0..59} }

J.ss { menghasilkan bagian detik bertipe integer {0..59} }

� Domain nilai : <integer, integer, integer>

� Konstanta : < 1, 0, 6 > ; < 17, 10, 31 >

� Operator :

Operator terhadap Jam harus dibuat

Operasi integer terhadap J.hh, J.mm dan J.ss

S1 Teknik Informatika-Unijoyo

NamaNama

q Peubah (variable)q Konstanta (constant)q Tipe bentukanq Nama Fungsiq Nama Prosedur

S1 Teknik Informatika-Unijoyo

NamaNama PeubahPeubah

� Peubah adalah tempat penyimpan data didalam memori yang isinya dapat diubah

S1 Teknik Informatika-Unijoyo

DEKLARASIA,B,C : integerx,y : realch : char

NamaNama KonstantaKonstanta

� Konstanta adalah tempat penyimpan datadi dalam memori yang isinya tetap dantidak dapat diubah

S1 Teknik Informatika-Unijoyo

DEKLARASIconst phi : 3.14const max : 100

NamaNama TipeTipe BentukanBentukan

� Nama tipe bentukan diberikan olehpembuat program

S1 Teknik Informatika-Unijoyo

DEKLARASItype Titik:record <x:real,y:real>type Jam:record<hh:integer,hh:integer,hh:integer>P : TitikJ : Jam

NamaNama FungsiFungsi dandan ProsedurProsedur� Konversi_Real_Integer adalah nama fungsi.

� Tukar adalah nama prosedur.

S1 Teknik Informatika-Unijoyo

DEKLARASIfunction Konversi_Real_Integer(input I : real:)à integer{ Mengkonversi harga i yang bertipe real menjadi harga ekivalen yang bertipeinteger }

DEKLARASIprocedureTukar(input/output A : integer,

input/output B : integer){ Kondisi awal : A dan B terdefinisi, A=a dan B=b }{ Kondisi akhir : A=b dan B=a }{ Proses : Mempertukarkan nilai A dan B }

KesimpulanKesimpulan� Tipe data dapat dikelompokkan menjadi dua

macam, yaitu tipe dasar (bilangan logika, bilanganbulat, bilangan riil, karakter dan string) dan tipebentukan

� Ada lima macam nama yang digunakan untukmengidentifikasikan dalam algoritma, yaituPeubah (variable), Konstanta (constant), Tipebentukan, Nama Fungsi dan Nama Prosedur

S1 Teknik Informatika-Unijoyo

DaftarDaftar PustakaPustaka� Jogiyanto HM [1989]. Turbo Pascal, Yogyakarta: Andi

Offset.� Noor Ifada [2005]. Diktat Matakuliah Algoritma

Pemrograman (Hibah Kompetisi A1), Bangkalan:Jurusan Teknik Informatika, Universitas Trunojoyo.

� Rinaldi Munir [2003]. Algoritma dan Pemrogramandengan Pascal dan C edisi Kedua, Bandung:Informatika.

S1 Teknik Informatika-Unijoyo