Top Banner
Topik 4 Tipe Data Algoritma & Struktur Data PS. Manajemen Informatika
30

Topik 4 Tipe Data

Jul 04, 2015

Download

Education

Algoritma dan Struktur Data
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Topik 4 Tipe Data

Topik 4Tipe Data

Algoritma & Struktur Data

PS. Manajemen Informatika

Page 2: Topik 4 Tipe Data

Sub Topik

1. Konsep Penamaan Peubah

2. Konsep Tipe dan Peubah

3. Bilangan Logik

4. Bilangan Bulat

5. Bilangan Pecahan

6. Karakter

7. String

8. Tipe Bentukan

Page 3: Topik 4 Tipe Data

Tujuan

Tujuan Instruksional Umum :

Mahasiswa diharapkan mampu menggunakan tipe data dalam algoritma

Tujuan Instruksional Khusus :

Mahasiswa memahami konsep penamaan Mahasiswa memahami penggunaan nama untuk

peubah Mahasiswa memahami konsep tipe data Mahasiswa memahami perbedaan tipe-tipe data

yang ada Mahasiswa mampu menggunakan tipe data untuk

peubah

Page 4: Topik 4 Tipe Data

Konsep Penamaan Peubah

Nama dipakai sebagai pengidentifikasi “sesuatu” danpemrogram mengacu “sesuatu” itu melalui namanya

Aturan penulisan nama :1. Nama harus dimulai dengan huruf alfabet, tidak

boleh dimulai dengan angka, spasi, atau karakterkhusus lainnya

2. Huruf besar atau huruf kecil tidak dibedakan3. Karakter penyusun nama hanya boleh huruf alfabet,

angka dan “_”4. Nama tidak boleh mengandung operator aritmatika,

relasional, tanda baca, dan karakter khusus lainnya5. Karakter-karakter didalam nama tidak boleh dipisah

dengan spasi6. Panjang nama tidak dibatasi

Page 5: Topik 4 Tipe Data

Nama sebaiknya mencerminkan nilai atau fungsi yang terkandung didalamnya

Contoh penamaan yang salah :6titiknilai ujianPT-1hari!A 1

Contoh penamaan yang benar :titik6 atau titik_6nilaiujian atau nilai_ujianPT1 atau PT_1hariA1

Page 6: Topik 4 Tipe Data

Didalam algoritma, objek yang diberi nama dapat berupa :

1. Peubah (Variable)• Peubah adalah tempat penyimpanan

data/informasi di memori yang isinya dapatdiubah

• Contoh :

DEKLARASIX, nilai_ujian, jumlah : realk : integerc : char

X, nilai_ujian, jumlah, k, c adalah nama-nama peubahNilai-nilai peubah dapat dimanipulasi melaluipernyataan-pernyataan didalam algoritma

Page 7: Topik 4 Tipe Data

2. Konstanta (Constant)• Peubah adalah tempat penyimpanan

data/informasi di memori yang isinya tetapselama pelaksanaan program dan tidak dapatdiubah nilainya

• Notasinya : const• Contoh :

DEKLARASIconst phi = 3.14const Nmaks = 100const sandi = ‘xyz’

phi, Nmaks, dan sandi adalah nama konstantaNilai konstanta yang sudah diisikan ke dalamnama konstanta tidak dapat diubah oleh instruksidi dalam algoritma

Page 8: Topik 4 Tipe Data

3. Tipe bentukanContoh :

DEKLARASItype Tanggal : record

<dd : integer {1 .. 31}mm : integer {1 .. 12}yyyy : integer { > 0}

>Now : Tanggal

Tanggal adalah nama tipeNow adalah peubah yang bertipe Tanggal

Page 9: Topik 4 Tipe Data

4. Nama fungsiContoh :

DEKLARASIFUNCTION Maksimum (input A, B : integer) integer{ mengembalikan nilai terbesar diantara A dan B }

Maksimum adalah nama fungsi

5. Nama prosedurContoh :

DEKLARASIPROCEDURE Tukar (input/output A, B : integer){ mempertukarkan nilai A dan B }

Tukar adalah nama prosedur

Page 10: Topik 4 Tipe Data

Konsep Tipe & Peubah

Peubah (variabel) dan konstanta adalah objek dasar yang dimanipulasi didalam program

Deklarasi daftar peubah digunakan untuk menyatakan tipepeubah

Operator menspesifikasikan operasi apa yang dapatdilakukan terhadap peubah dan konstanta

Tipe sebuah objek menentukan himpunan nilai yang dapatdimilikinya dan operasi yang dapat dilakukan pada objektersebut

Tipe data dikelompokkan menjadi dua macam, yaitu tipedasar dan tipe bentukan

Page 11: Topik 4 Tipe Data

Bilangan Logik

Nama tipe bilangan logik adalah boolean (diambil darinama matematikawan Inggris, George Boole)

Bilangan logik hanya mengenal dua nilai yaitu benar (true) dan salah (false)

Konstanta pada tipe ini adalah true dan false

Operasi yang bisa dilakukan terhadap tipe ini adalahoperasi logika• Jika a dan b adalah peubah yang bertipe boolean, maka

hasil operasi logika terhadap a dan b adalah :

Page 12: Topik 4 Tipe Data

a b a and b a or b a xor b

True True True True False

True False False True True

False True False True True

False False False False False

a Not(a)

True False

False True

Page 13: Topik 4 Tipe Data

Bilangan Bulat

Nama tipe bilangan bulat adalah integer

Tipe ini memiliki keterurutan, dimana nilai sebelumnya dansesudahnya dapat ditentukan

Ranah nilai :

Tipe Rentang Nilai Format

byte 0 .. 255 Unsigned 8-bit

shortint -128 .. 127 Signed 8-bit

word 0 .. 65535 Unsigned 16-bit

integer -32768 .. 32767 Signed 16-bit

longint -2147483648 .. 2147483647 Signed 32-bit

Page 14: Topik 4 Tipe Data

Konstanta untuk tipe ini harus ditulis tanpa mengandung titikdesimal

Operasi yang dapat dilakukan terhadap tipe ini adalah :

1. Operasi Aritmatika

• Hasilnya berupa bilangan bulat

• Operator yang dapat digunakan :

+ tambah

- kurang

* kali

divbagi

mod sisa hasil bagi

2. Operasi Perbandingan

• Hasilnya berupa nilai boolean

• Operator yang dapat digunakan : <, ≤, >, ≥, =, ≠

Page 15: Topik 4 Tipe Data

Bilangan Pecahan

Nama tipe bilangan pecahan adalah real

Konstanta untuk tipe ini harus ditulis dengan tanda titikdesimal

Ranah nilai :

Tipe Rentang Nilai Format

Real 2.9 x 10-39 .. 1.7 x 1038 6 byte

Single 1.5 x 10-45 .. 3.4 x 1038 4 byte

Double 5.0 x 10-324 .. 1.7 x 10308 8 byte

Extended 3.4 x 10-4932 .. 1.1 x 104932 10 byte

Page 16: Topik 4 Tipe Data

Operasi yang dapat dilakukan terhadap tipe ini adalah :

1. Operasi Aritmatika

• Hasilnya berupa bilangan riil

• Operator yang dapat digunakan :

+ tambah

- kurang

* kali

/ bagi

2. Operasi Perbandingan

• Hasilnya berupa nilai boolean

• Operator yang dapat digunakan : <, ≤, >, ≥, ≠

Page 17: Topik 4 Tipe Data

Karakter

Nama tipe untuk karakter adalah char

Ranah nilai adalah semua huruf didalam alfabet (‘a’..’z’, ‘A’..’Z’), angka desimal (0..9), tanda baca (‘.’,’:’,’!’,’?’,’,’, danlain-lain), operator aritmatika (‘+’,’-’,’*’,’/’) dan karakter-karakter khusus seperti (‘$’,’#’,’@’,’^’,’~’, dan lain-lain)

Konstanta karakter harus diapit oleh tanda petik tunggal

Catat : Ingat : ‘9’ adalah karakter, tetapi 9 adalah integer

Karakter kosong (null) adalah karakter yang panjangnya noldan dilambangkan dengan ‘’

Operasi yang bisa dilakukan adalah operasi perbandingan

Operator yang digunakan adalah =, ≠, ≤ , <, >, ≥

Tipe ini memiliki keterurutan yang ditentukan oleh carapengkodeannya didalam komputer, misalnya kode ASCII

Page 18: Topik 4 Tipe Data

String

String adalah untaian karakter dengan panjang tertentu

Nama tipe untuk karakter adalah string

Ranah nilainya adalah deretan karakter yang telahdidefinisikan pada ranah char

Konstanta string harus diapit oleh tanda petik tunggal

String kosong (null) adalah string yang panjangnya nol dandilambangkan dengan ‘’

Operasi yang bisa dilakukan adalah :

1. Operasi Penyambungan (Concatenation)

• Operatornya : +

• Jika a dan b adalah peubah bertipe string, maka

a + b = ab

Page 19: Topik 4 Tipe Data

2. Operasi Perbandingan

• Hasilnya berupa nilai boolean

• Operator yang dapat digunakan : <, ≤, >, ≥, =, ≠

• String yang disusun oleh gabungan numerik dan karakterdisebut alfanumerik

Page 20: Topik 4 Tipe Data

Tipe Bentukan Sendiri

Untuk memberi nama baru pada tipe dasar digunakan katakunci type

Ranah nilai, cara menulis konstanta dan operasi-operasiterhadap tipe baru sama seperti tipe dasarnya

Contoh :

type BilanganBulat : integer

P : BilanganBulat

BilanganBulat merupakan tipe baru yang berasal dari tipedasar integer

P merupakan peubah yang bertipe BilanganBulat, dimana P secara tidak langsung bertipe integer

Page 21: Topik 4 Tipe Data

Tipe Terstruktur

Tipe yang berbentuk rekaman (record)

Rekaman disusun oleh satu atau lebih field

Tiap field menyimpan data dari tipe dasar tertentu atau dari tipe bentukanlain yang sudah didefinisikan sebelumnya

Contoh : Mendefinisikan tipe tanggal

Didefinisikan tipe terstruktur yang mewakili tanggal dalam kalenderMasehi. Hari dinyatakan dengan sebagai tanggal (dd), bulan (mm), dantahun (yyyy), misalnya 28-09-2009. Misalkan tipe bentukan tersebut diberinama Tanggal.

Cara menuliskan tipe Tanggal :

type Tanggal : record

<dd : integer {1 .. 31}

mm : integer {1 .. 12}

yyyy : integer { > 0}

>

Page 22: Topik 4 Tipe Data

Tipe Terstruktur

Tipe yang berbentuk rekaman (record)

Rekaman disusun oleh satu atau lebih field

Tiap field menyimpan data dari tipe dasar tertentu atau daritipe bentukan lain yang sudah didefinisikan sebelumnya

Operasi :

1. Operasi aritmatika bilangan bulat terhadap tiap field

2. Operasi perbandingan terhadap masing-masing field

Page 23: Topik 4 Tipe Data

Contoh : Mendefinisikan tipe tanggal

Didefinisikan tipe terstruktur yang mewakili tanggaldalam kalender Masehi. Hari dinyatakan dengan sebagaitanggal (dd), bulan (mm), dan tahun (yyyy), misalnya 28-09-2009. Misalkan tipe bentukan tersebut diberi namaTanggal.

Cara menuliskan tipe Tanggal :

type Tanggal : record

<dd : integer {1 .. 31}

mm : integer {1 .. 12}

yyyy : integer { > 0}

>

Page 24: Topik 4 Tipe Data

Contoh Soal

Kasus 1: Pseudocode kasus 2 di Topik 3

ALGORITMA cetak_nama

{algoritma ini digunakan untuk mencetak tulisan ‘Halo, apa kabarnama?}

DEKLARASI

nama : string {bertipe string karena nama berisi deretan karakter}

DESKRIPSI:

input(nama)

output(‘Halo, apa kabar’,nama,’?’)

Page 25: Topik 4 Tipe Data

Kasus 2:

Buatlah algoritma English Structure, Flowchart danPseudocode untuk menghitung luas bujursangkar, dimananilai sisi merupakan masukan dari user!

English Structure

Masalah : Menghitung luas bujursangkar

Input : sisi, bertipe bilangan bulat

Output : luas, bertipe bilangan bulat

Proses

1. Membaca nilai sisi dari masukan user

2. Menghitung luas = sisi * sisi

3. Mencetak hasil luas ke layar

Page 26: Topik 4 Tipe Data

Flowchart :

Page 27: Topik 4 Tipe Data

Pseudocode :

ALGORITMA luas_bujursangkar

{program ini digunakan untuk menghitung luas bujursangkar}

DEKLARASI

sisi, luas : integer

DESKRIPSI:

input(sisi)

luas sisi * sisi

output(luas)

Page 28: Topik 4 Tipe Data

Rangkuman

Nama peubah mencerminkan isi peubah

Tipe dasar : bilangan logik, bilangan bulat, bilangan pecahan, karakter

Tipe bentukan : string, tipe bentukan sendiri, tipe terstruktur

Pemilihan tipe tergantung pada kapasitas nilai dari peubah

Page 29: Topik 4 Tipe Data

Latihan Soal

Kasus 1:

Buatlah algoritma untuk menghitung luas segitiga, dimana nilai alas dan tinggi merupakan masukan dari user, dan mencetak hasilnya ke layar!

Kasus 2:

Buatlah algoritma untuk menghitung luaspersegipanjang, dimana nilai panjang dan lebar merupakanmasukan dari user, dan mencetak hasilnya ke layar!

Page 30: Topik 4 Tipe Data

REFERENSI

1. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan TeknikPemrograman”. Yogyakarta: ANDI OFFSET.

2. Fathul Wahid. 2004. “Dasar-Dasar Algoritma danPemrograman”. Yogyakarta: ANDI OFFSET.

3. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman Dalam Bahasa Pascal dan C Buku 1”. Bandung: Informatika.

4. Rinaldi Munir, Leoni Lidya. 2002. “Algoritma & Pemrograman Dalam Bahasa Pascal dan C Buku 2”. Bandung: Informatika.