31
Topik 7 Pemilihan Algoritma & Struktur Data PS. Manajemen Informatika

Topik 7 Pemilihan

Embed Size (px)

DESCRIPTION

Algoritma dan Struktur Data

Citation preview

Page 1: Topik 7 Pemilihan

Topik 7Pemilihan

Algoritma & Struktur Data

PS. Manajemen Informatika

Page 2: Topik 7 Pemilihan

Sub Topik

1. Konsep Dasar Pemilihan

2. Pemilihan Satu Kasus

3. Pemilihan Dua Kasus

4. Pemilihan Banyak Kasus

5. Struktur CASE

Page 3: Topik 7 Pemilihan

Tujuan

Tujuan Instruksional Umum :

Mahasiswa diharapkan mampu membuat algoritmadengan menggunakan pernyataan pilihan

Tujuan Instruksional Khusus :

Mahasiswa mampu menggunakan pernyataan IF Satu Kasus

Mahasiswa mampu menggunakan pernyataan IF DuaKasus

Mahasiswa mampu menggunakan pernyataan IF Banyak Kasus

Mahasiswa mampu menggunakan pernyataan CASE

Page 4: Topik 7 Pemilihan

Konsep Dasar Pemilihan

Suatu aksi hanya dilakukan bila persyaratan atau kondisitertentu dipenuhi

Dalam memecahkan masalah, harus menganalisis kasus-kasus apa saja yang mungkin ada, lalu aksi apa yang dilakukan bila suatu kasus dimasuki

Struktur Pemilihan:• Pemilihan Satu Kasus• Pemilihan Dua Kasus• Pemilihan Banyak Kasus

Page 5: Topik 7 Pemilihan

Pemilihan Satu Kasus

Notasi algoritmik :

if kondisi thenpernyataan

endif

Pernyataan sesudah kata then (dapat berupa satu atau lebihpernyataan) adalah aksi yang hanya akan dilaksanakan jikakondisi bernilai benar

Jika kondisi bernilai salah maka tidak ada pernyataanapapun yang dikerjakan

Kata endif ditambahkan untuk mempertegas awal danakhir struktur IF-THEN

Page 6: Topik 7 Pemilihan

Flowchart :

Page 7: Topik 7 Pemilihan

Contoh Soal

Kasus 1 :

Buatlah algoritma yang membaca sebuah angka yang dimasukkan oleh user, lalu menampilkan tulisan “AngkaSatu” jika bilangan yang dimasukkan adalah angka 1.

Page 8: Topik 7 Pemilihan

English Structure

Masalah : Menampilkan tulisan „Angka satu‟ jika angkayang dimasukkan user adalah angka 1

Input : angka ; bertipe bilangan bulat

Output : tulisan „Angka satu‟

Proses

1. Membaca angka dari masukan user

2. Jika angka yang dimasukkan = 1 maka

Cetak tulisan „Angka satu‟

Page 9: Topik 7 Pemilihan

Flowchart :

Page 10: Topik 7 Pemilihan

Pseudocode :

ALGORITMA Angka

{ Mencetak tulisan “Angka Satu” jika angka yang dimasukkan adalah angka 1}

DEKLARASI

angka: integer

DESKRIPSI:

input(angka)

if angka = 1 then

output(„Angka Satu‟)

endif

Page 11: Topik 7 Pemilihan

Pemilihan Dua Kasus

Notasi algoritmik :

if kondisi thenpernyataan1

elsepernyataan2

endif

Pernyataan1 dilaksanakan jika kondisi bernilai benar Jika kondisi bernilai salah maka pernyataan2 yang akan

dilaksanakan Kata else menyatakan ingkaran dari kondisi

Page 12: Topik 7 Pemilihan

Flowchart :

Page 13: Topik 7 Pemilihan

Contoh Soal

Kasus 2:

Buatlah algoritma yang membaca sebuah angka yang dimasukkan oleh user, lalu menampilkan tulisan “AngkaSatu” jika bilangan yang dimasukkan adalah angka 1. Jikaangka yang dimasukkan selain angka satu, akanmenampilkan tulisan “Maaf, angka yang dimasukkansalah”

Page 14: Topik 7 Pemilihan

English Structure

Masalah : Menampilkan tulisan “Angka Satu” jika angkayang dimasukkan adalah angka 1; menampilkantulisan “Maaf, angka yang dimasukkan salah” jikaangka yang dimasukkan selain angka 1

Input : angka

Output : tulisan “Angka Satu” atau “Maaf, angka yang dimasukkan salah”

Proses :

1. Membaca angka yang dimasukkan

2. Jika angka yang dimasukkan = 1 maka

Cetak tulisan “Angka Satu”

Jika tidak, maka

Cetak tulisan “Maaf, angka yang dimasukkan salah”

Page 15: Topik 7 Pemilihan

Flowchart :

Page 16: Topik 7 Pemilihan

Pseudocode :

ALGORITMA Angka{ Mencetak tulisan “Angka Satu” jika angka yang dimasukkanadalah angka 1. Mencetak tulisan “Maaf, angka yang dimasukkan salah” jika angka yang dimasukkan selain angka 1}

DEKLARASIangka: integer

DESKRIPSI:input(angka)if angka = 1 then

output(„Angka Satu‟)else

output(„Maaf, angka yang dimasukkan salah‟)endif

Page 17: Topik 7 Pemilihan

Pemilihan Banyak Kasus

Notasi algoritmik :

if kondisi1 thenpernyataan1

elseif kondisi2 then

pernyataan2else

if kondisi3 thenpernyataan3

endifendif

endif

Page 18: Topik 7 Pemilihan

Flowchart :

Page 19: Topik 7 Pemilihan

Contoh Soal

Kasus 3:

Buatlah algoritma yang membaca sebuah angka yang dimasukkan oleh user, lalu menampilkan tulisan “AngkaSatu” jika angka yang dimasukkan adalah angka 1. Jikaangka yang dimasukkan adalah angka 2, akanmenampilkan tulisan “Angka dua”. Jika angka yang dimasukkan selain angka satu dan dua, akanmenampilkan tulisan “Maaf, angka yang dimasukkansalah”

Page 20: Topik 7 Pemilihan

English Structure

Masalah : Menampilkan tulisan “Angka Satu” jika angkayang dimasukkan adalah angka 1; menampilkantulisan “Angka Dua” jika angka yang dimasukkanadalah angka 2; menampilkan tulisan “Maaf, angka yang dimasukkan salah” jika angka yang dimasukkan selain angka 1

Input : angka

Output : tulisan “Angka Satu” atau “Maaf, angka yang dimasukkan salah”

Proses :

1. Membaca angka yang dimasukkan

2. Jika angka yang dimasukkan = 1 maka

Cetak tulisan “Angka Satu”

Jika angka yang dimasukkan = 2 maka

Cetak tulisan “Angka Dua”

Jika tidak, maka

Cetak tulisan “Maaf, angka yang dimasukkan salah”

Page 21: Topik 7 Pemilihan

Flowchart :

Page 22: Topik 7 Pemilihan

Pseudocode :

ALGORITMA Angka{ Mencetak tulisan “Angka Satu” jika angka yang dimasukkanadalah angka 1. Mencetak tulisan “Maaf, angka yang dimasukkan salah” jika angka yang dimasukkan selain angka 1}

DEKLARASIangka: integer

DESKRIPSI:input(angka)if angka = 1 then

output(„Angka Satu‟)elseif angka = 1 then

output(„Angka Satu‟)else

output(„Maaf, angka yang dimasukkan salah‟)endif

Page 23: Topik 7 Pemilihan

Struktur CASE

Konstruksi CASE dapat menyederhanakan penulisan IF-THEN-ELSE yang bertingkat

Notasi algoritmik :

case ekspresinilai1 : pernyataan1nilai2 : pernyataan2nilai3 : pernyataan3...nilai_n : pernyataan_notherwise : pernyataan_x

endcase

Page 24: Topik 7 Pemilihan

Contoh Soal

Kasus 4:

Ubahlah algoritma pada kasus 3 ke dalam strukturCASE !

Page 25: Topik 7 Pemilihan

English Structure

Masalah : Menampilkan tulisan “Angka Satu” jika angkayang dimasukkan adalah angka 1; menampilkantulisan “Angka Dua” jika angka yang dimasukkanadalah angka 2; menampilkan tulisan “Maaf, angka yang dimasukkan salah” jika angka yang dimasukkan selain angka 1

Input : angka

Output : tulisan “Angka Satu” atau “Maaf, angka yang dimasukkan salah”

Proses :

1. Membaca angka yang dimasukkan

2. Jika angka yang dimasukkan = 1 maka

Cetak tulisan “Angka Satu”

Jika angka yang dimasukkan = 2 maka

Cetak tulisan “Angka Dua”

Jika tidak, maka

Cetak tulisan “Maaf, angka yang dimasukkan salah”

Page 26: Topik 7 Pemilihan

Flowchart :

Page 27: Topik 7 Pemilihan

Pseudocode :

ALGORITMA Angka{ Mencetak tulisan “Angka Satu” jika angka yang dimasukkanadalah angka 1. Mencetak tulisan “Maaf, angka yang dimasukkan salah” jika angka yang dimasukkan selain angka 1}

DEKLARASIangka: integer

DESKRIPSI:input(angka)case angka

1 : output(„Angka Satu‟)2 : output(„Angka Satu‟)otherwise output(„Maaf, angka yang dimasukkansalah‟)

endcase

Page 28: Topik 7 Pemilihan

Rangkuman

Pernyataan pilihan satu kasus : if… then

Pernyataan pilihan dua kasus : if … then … else

Pernyataan pilihan banyak kasus :

• If … then …else if … then …

• Case

Page 29: Topik 7 Pemilihan

Latihan Soal

Kasus 1:

Buatlah algoritma untuk membaca angka yang dimasukkan oleh user, kemudian menampilkan tulisan“Angka positif” jika angka yang dimasukkan oleh user lebih besar dari nol !

Kasus 2:

Buatlah algoritma untuk membaca angka yang dimasukkan oleh user. Jika angka yang dimasukkan olehuser lebih besar dari nol, maka tampilkanlah tulisan“Angka positif”, akan tetapi jika angka yang dimasukkanoleh user lebih kecil dari nol, maka tampilkanlah tulisan“Angka negatif” !

Page 30: Topik 7 Pemilihan

Latihan Soal

Kasus 3:

Dewi pergi berbelanja ke sebuah mini market. Diamembeli gula dengan harga 11.000 per kilogram. Jika Dewimembeli gula lebih dari 10 kg, maka Dewi akan mendapatdiskon 10%. Selain itu, Dewi hanya mendapat diskon 5%. Berapakah total pembayaran yang harus dibayar oleh Dewi?

Buatlah algoritmanya jika harga gula merupakankonstanta, sedangkan jumlah gula yang dibeli merupakanmasukan dari user!

Kasus 4:

Buatlah algoritma dengan struktur CASE untukmenampilkan nama bulan berdasarkan angka yang dimasukkan oleh user! Misalkan user memasukkan angka 1 maka nama bulan yang dicetak adalah „Januari‟.

Page 31: Topik 7 Pemilihan

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.