Topik 4 Tipe Data

625 views

Published on

Algoritma dan Struktur Data

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
625
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
29
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Topik 4 Tipe Data

  1. 1. Topik 4 Tipe Data Algoritma & Struktur Data PS. Manajemen Informatika
  2. 2. 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
  3. 3. 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
  4. 4. Konsep Penamaan Peubah  Nama dipakai sebagai pengidentifikasi “sesuatu” dan pemrogram mengacu “sesuatu” itu melalui namanya  Aturan penulisan nama : 1. Nama harus dimulai dengan huruf alfabet, tidak boleh dimulai dengan angka, spasi, atau karakter khusus lainnya 2. Huruf besar atau huruf kecil tidak dibedakan 3. Karakter penyusun nama hanya boleh huruf alfabet, angka dan “_” 4. Nama tidak boleh mengandung operator aritmatika, relasional, tanda baca, dan karakter khusus lainnya 5. Karakter-karakter didalam nama tidak boleh dipisah dengan spasi 6. Panjang nama tidak dibatasi
  5. 5.  Nama sebaiknya mencerminkan nilai atau fungsi yang terkandung didalamnya  Contoh penamaan yang salah : 6titik nilai ujian PT-1 hari! A 1  Contoh penamaan yang benar : titik6 atau titik_6 nilaiujian atau nilai_ujian PT1 atau PT_1 hari A1
  6. 6.  Didalam algoritma, objek yang diberi nama dapat berupa : 1. Peubah (Variable) • Peubah adalah tempat penyimpanan data/informasi di memori yang isinya dapat diubah • Contoh : DEKLARASI X, nilai_ujian, jumlah : real k : integer c : char X, nilai_ujian, jumlah, k, c adalah nama-nama peubah Nilai-nilai peubah dapat dimanipulasi melalui pernyataan-pernyataan didalam algoritma
  7. 7. 2. Konstanta (Constant) • Peubah adalah tempat penyimpanan data/informasi di memori yang isinya tetap selama pelaksanaan program dan tidak dapat diubah nilainya • Notasinya : const • Contoh : DEKLARASI const phi = 3.14 const Nmaks = 100 const sandi = ‘xyz’ phi, Nmaks, dan sandi adalah nama konstanta Nilai konstanta yang sudah diisikan ke dalam nama konstanta tidak dapat diubah oleh instruksi di dalam algoritma
  8. 8. 3. Tipe bentukan Contoh : DEKLARASI type Tanggal : record <dd : integer {1 .. 31} mm : integer {1 .. 12} yyyy : integer { > 0} > Now : Tanggal Tanggal adalah nama tipe Now adalah peubah yang bertipe Tanggal
  9. 9. 4. Nama fungsi Contoh : DEKLARASI FUNCTION Maksimum (input A, B : integer)  integer { mengembalikan nilai terbesar diantara A dan B } Maksimum adalah nama fungsi 5. Nama prosedur Contoh : DEKLARASI PROCEDURE Tukar (input/output A, B : integer) { mempertukarkan nilai A dan B } Tukar adalah nama prosedur
  10. 10. Konsep Tipe & Peubah  Peubah (variabel) dan konstanta adalah objek dasar yang dimanipulasi didalam program  Deklarasi daftar peubah digunakan untuk menyatakan tipe peubah  Operator menspesifikasikan operasi apa yang dapat dilakukan terhadap peubah dan konstanta  Tipe sebuah objek menentukan himpunan nilai yang dapat dimilikinya dan operasi yang dapat dilakukan pada objek tersebut  Tipe data dikelompokkan menjadi dua macam, yaitu tipe dasar dan tipe bentukan
  11. 11. Bilangan Logik  Nama tipe bilangan logik adalah boolean (diambil dari nama 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 adalah operasi logika • Jika a dan b adalah peubah yang bertipe boolean, maka hasil operasi logika terhadap a dan b adalah :
  12. 12. 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
  13. 13. Bilangan Bulat  Nama tipe bilangan bulat adalah integer  Tipe ini memiliki keterurutan, dimana nilai sebelumnya dan sesudahnya 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
  14. 14.  Konstanta untuk tipe ini harus ditulis tanpa mengandung titik desimal  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 : <, ≤, >, ≥, =, ≠
  15. 15. Bilangan Pecahan  Nama tipe bilangan pecahan adalah real  Konstanta untuk tipe ini harus ditulis dengan tanda titik desimal  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
  16. 16.  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 : <, ≤, >, ≥, ≠
  17. 17. Karakter  Nama tipe untuk karakter adalah char  Ranah nilai adalah semua huruf didalam alfabet (‘a’..’z’, ‘A’..’Z’), angka desimal (0..9), tanda baca (‘.’,’:’,’!’,’?’,’,’, dan lain-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 nol dan dilambangkan dengan ‘’  Operasi yang bisa dilakukan adalah operasi perbandingan  Operator yang digunakan adalah =, ≠, ≤ , <, >, ≥  Tipe ini memiliki keterurutan yang ditentukan oleh cara pengkodeannya didalam komputer, misalnya kode ASCII
  18. 18. String  String adalah untaian karakter dengan panjang tertentu  Nama tipe untuk karakter adalah string  Ranah nilainya adalah deretan karakter yang telah didefinisikan pada ranah char  Konstanta string harus diapit oleh tanda petik tunggal  String kosong (null) adalah string yang panjangnya nol dan dilambangkan dengan ‘’  Operasi yang bisa dilakukan adalah : 1. Operasi Penyambungan (Concatenation) • Operatornya : + • Jika a dan b adalah peubah bertipe string, maka a + b = ab
  19. 19. 2. Operasi Perbandingan • Hasilnya berupa nilai boolean • Operator yang dapat digunakan : <, ≤, >, ≥, =, ≠ • String yang disusun oleh gabungan numerik dan karakter disebut alfanumerik
  20. 20. Tipe Bentukan Sendiri  Untuk memberi nama baru pada tipe dasar digunakan kata kunci type  Ranah nilai, cara menulis konstanta dan operasi-operasi terhadap tipe baru sama seperti tipe dasarnya  Contoh : type BilanganBulat : integer P : BilanganBulat BilanganBulat merupakan tipe baru yang berasal dari tipe dasar integer P merupakan peubah yang bertipe BilanganBulat, dimana P secara tidak langsung bertipe integer
  21. 21. 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 bentukan lain yang sudah didefinisikan sebelumnya  Contoh : Mendefinisikan tipe tanggal Didefinisikan tipe terstruktur yang mewakili tanggal dalam kalender Masehi. Hari dinyatakan dengan sebagai tanggal (dd), bulan (mm), dan tahun (yyyy), misalnya 28-09-2009. Misalkan tipe bentukan tersebut diberi nama Tanggal. Cara menuliskan tipe Tanggal : type Tanggal : record <dd : integer {1 .. 31} mm : integer {1 .. 12} yyyy : integer { > 0} >
  22. 22. 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 bentukan lain yang sudah didefinisikan sebelumnya  Operasi : 1. Operasi aritmatika bilangan bulat terhadap tiap field 2. Operasi perbandingan terhadap masing-masing field
  23. 23.  Contoh : Mendefinisikan tipe tanggal Didefinisikan tipe terstruktur yang mewakili tanggal dalam kalender Masehi. Hari dinyatakan dengan sebagai tanggal (dd), bulan (mm), dan tahun (yyyy), misalnya 28-09- 2009. Misalkan tipe bentukan tersebut diberi nama Tanggal. Cara menuliskan tipe Tanggal : type Tanggal : record <dd : integer {1 .. 31} mm : integer {1 .. 12} yyyy : integer { > 0} >
  24. 24. Contoh Soal  Kasus 1: Pseudocode kasus 2 di Topik 3 ALGORITMA cetak_nama {algoritma ini digunakan untuk mencetak tulisan ‘Halo, apa kabar nama?} DEKLARASI nama : string {bertipe string karena nama berisi deretan karakter} DESKRIPSI: input(nama) output(‘Halo, apa kabar’,nama,’?’)
  25. 25.  Kasus 2: Buatlah algoritma English Structure, Flowchart dan Pseudocode untuk menghitung luas bujursangkar, dimana nilai 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
  26. 26. Flowchart :
  27. 27. Pseudocode : ALGORITMA luas_bujursangkar {program ini digunakan untuk menghitung luas bujursangkar} DEKLARASI sisi, luas : integer DESKRIPSI: input(sisi) luas  sisi * sisi output(luas)
  28. 28. 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
  29. 29. 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 luas persegipanjang, dimana nilai panjang dan lebar merupakan masukan dari user, dan mencetak hasilnya ke layar!
  30. 30. REFERENSI 1. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan Teknik Pemrograman”. Yogyakarta: ANDI OFFSET. 2. Fathul Wahid. 2004. “Dasar-Dasar Algoritma dan Pemrograman”. 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.

×