28
ALGORITMA DAN PEMROGRAMAN 2 3 SKS By : Sri Rezeki Candra Nursari

ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Embed Size (px)

Citation preview

Page 1: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

ALGORITMA DAN PEMROGRAMAN 2

3 SKS By : Sri Rezeki Candra Nursari

Page 2: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

MATERI

• Teks/string• Pointer• File• Struktur• Kelas• Konstruktor dan

Destruktor• Kelas dan Obyek

• Overloading Operator• Inheritance (Pewarisan)• Polimorfisme • Template Fungsi dan

Kelas• Sort• Search

Page 3: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

STRUKTUR

Pertemuan 04

3 SKS

Page 4: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Definisi Struktur

• Suatu object benda biasanya mempunyai beberapa attribut yang perlu dicatat.– Contoh :

• Budi sebagai personal mempunyai attribut nama, alamat, usia, jenis kelamin, pekerjaan, status

• Budi sebagai atlit mempunyai attribut cabang olah raga, daftar prestasi, jadual pertandingan

• Jadi satu benda (Budi) yang sama dimungkinkan mempunyai atribut yang berbeda-beda sesuai dengan dari sudut mana objek itu dipandang

Page 5: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Definisi Struktur

• Merupakan kumpulan elemen-elemen data yang digabungkan menjadi satu kesatuan.

• Masing-masing elemen data dinamakan field atau elemen struktur

• Struktur digunakan untuk mengelompokkan beberapa informasi yang berkaitan.

Page 6: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Definisi Struktur• Array dan struktur mempunyai persamaan dan

perbedaan, yaitu :– Persamaan

• Alokasi memori untuk elemen-elemennya sudah ditentukan sebelum program dijalankan (sifatnya: statis)

– Perbedaan• Array adalah struktur data yang tipe data dari elemen-

elemennya harus sama (homogen) dan elemen-elemennya diakses atau diidentifikasi menggunakan indek

• Struktur adalah struktur data yang tipe data dari elemen-ele men tidak harus sama (heterogen) & elemen-elemennya diakses atau diidentifikasi menggunakan identifier atau nama variabel

Page 7: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur• Pendeklarasian Struktur selalu diawali dengan kata

kunci struct yang diikuti dengan nama dari struktur.

• Field-field yang dikumpulkan dalam sebuah struktur diletakkan diantara tanda kurung kurawal buka { dan kurung kurawal tutup } dan diakhiri dengan tanda titik koma ;– Contoh :

struct MAHASISWA {char NIM[10];char nama[25];float IPK; };

Page 8: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur– Apabila Mahasiswa memiliki 6 bagian, yaitu 1 digit

pertama sebagai kode Fakultas, kemudian 1 digit selanjutnya adalah kode Program Studi, kemudian 2 digit selanjutnya adalah kode Angkatan, kemudian 2 digit selanjutnya adalah kode Status Mhs, kemudian 1 digit selanjutnya adalah kode RK/R, dan 3 digit adalah nomor urut

struct nim{

char fakultas[1], prodi[1], angkatan[2], status[2], rk_r[1], no_urut[3];

};

Page 9: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur• Bermanfaat untuk mengelompokkan sejumlah

data dengan tipe yang berlainan• Membuat tipe data baru dan disebut dengan tipe

data abstrak– Contoh :

struct MATAKULIAH{

char NmMK[30];int sks;char Nilai;

};

Page 10: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur– Contoh :

struct MAHASISWA{

char Nim[10];char Nama[25];char Jurusan[25];intJmlMK;MATAKULIAH data_MK; (struktur didalam struktur)

};

Page 11: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur

• Pendefinisian/pendeklarasianvariabel struktur sama seperti pendefinisian variabel biasa:– tipe_data nama_variabel

• Contoh :–MATAKULIAH Data_MK;–MAHASISWA Data_MHS;

Page 12: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Pendeklarasian Struktur

• Pendefinisian variabel bisa digabung dengan pendeklarasian struktur:– Contoh :

struct MATAKULIAH{

char NmMK[30];int sks;char Nilai;

}; Data_MK;

Page 13: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Mengakses Struktur

• Syntax:–variabel_struktur.nama_anggota–Contoh :

• strcpy(Data_MK.NmMk,“Algo 2”);• Data_MHS.Data_MK.sks = 3;

Page 14: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Programcontoh 01

Page 15: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Algoritma.........?????Pseudocode.......??????

Page 16: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Menyalin Struktur• Misal didefinisikan dua buah variabel:

– Contoh :MATAKULIAH mk1, mk2;

• Maka penyalinan berikut yang diperbolehkan adalah:mk2 = mk1

• Pernyataan diatas sama dengan gabungan 3 pernyataan berikut:

strcpy(mk2.NmMK, mk1.NmMK);mk2.sks = mk1.sks;mk2.nilai = mk1.nilai;

Page 17: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Membandingkan Struktur• Dua buah struktur tidak dapat secara langsung di banding

kan• Pembandingan dilakukan dengan membandingkan

masing-masing anggotanya• Contoh:

if ((strcmp(mk1.NmMK,mk2.NmMK) == 0) && (mk1.sks == mk2.sks) && (mk1.nilai == mk2.nilai))

cout << “Sama”;else

cout << “Tidak sama”;

Page 18: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Struktur dan Fungsi

• Suatu struktur dapat juga berkedudukan sebagai argumen fungsi

• Contoh :–Menampilkan nilai x & y, dimana argumen

dari fungsi tampil_posisi berupa struktur bertipe koordinat. Fungsi ini menampilkan nilai anggota struktur tersebut yi; x & y.

Page 19: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Programcontoh 02

Page 20: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Algoritma.........?????Pseudocode.......??????

Page 21: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Programcontoh 03

Page 22: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Input & Output

Page 23: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Algoritma.........?????Pseudocode.......??????

Page 24: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Input & OutputTugas

Page 25: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Tugas1. Buat KHS

– Jumlah mahasiswa melalui proses input– Menginput nama mahasiswa, NIM, banyaknya mata kuliah yang

diambil dan menghitung (IPK, jumlah mata kuliah yang diambil, jumlah sks) contoh : Output NIM : 4.5.10.21.0.002

Page 26: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Tugas 02 2. Buat Penjualan Toko Bagus

– Jumlah Pelanggan melalui proses input– Menginput nama pelanggan, alamat, telphone, banyaknya

barang yang dibeli dan menghitung jumlah barang yang dibeli serta total bayar

Page 27: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Programcontoh 01

Page 28: ALGORITMA DAN PEMROGRAMAN 2 - reezeki2011 · Definisi Struktur • Array dan struktur mempunyai persamaan dan perbedaan, yaitu : – Persamaan • Alokasi memori untuk elemen-elemennya

Algoritma.........?????Pseudocode.......??????