Pertemuan 5 PEMILIHAN/PERCABANGAN

dokumen-dokumen yang mirip
PRAKTIKUM 4 PERCABANGAN

PRAKTIKUM PEMROGRAMAN KOMPUTER MODUL II PERCABANGAN. Bahasa Pemrograman : C / C++

Pengantar Pemrograman

PEMROGRAMAN BERORIENTASI OBJEK. Percabangan. Budhi Irawan, S.Si, M.T

Pertemuan 4 RUNTUNAN/SEKUENSIAL

24/09/2017 PERCABANGAN

BAB VI. STATEMENT CONTROL

BAB IV STRUKTUR RUNTUNAN DAN PERCABANGAN

Algoritma dan Pemrograman. Pertemuan Ke-7 Statement Pengendalian 2

Percabangan. Agus Priyanto, M.Kom

Selection / Pemilihan PEMILIHAN

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

STRUKUR KENDALI : PERCABANGAN

Kondisional/Pencabangan/Pemilihan. Konsep Pencabangan Sintaks Konsep if (kasus tunggal) Konsep if-else (2-3 kasus) Konsep switch (lebih dari 3 kasus)

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

MODUL. Operasi Kondisi. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Bab 4 Percabangan. Rangkuman Buku: Pemrograman C++ karangan Budi Raharjo. disiapkan oleh Dr. Asep Sofyan

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Pertemuan 3 Penyeleksian Kondisi

If (kondisi) pernyataan

Decission : if & if else

Minggu III STRUKTUR PEMILIHAN (KONTROL PROGRAM)

UJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA

MODUL 5 PERULANGAN (LOOPING)

Pertemuan X. Pemrograman Web Dasar Semester 1

Struktur Kontrol. (Repetition)

I. RUNTUNAN(SEQUENCE)

PENGAMBILAN KEPUTUSAN

Algoritma Pemrograman. Fery Updi,M.Kom

BAB 4 KONDISI / PEMILIHAN

Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

Struktur Kontrol Pemrograman Java : PERCABANGAN

Pemrograman Dasar S E L E C T I O N

Algoritma & Pemrograman #4. by antonius rachmat c, s.kom, m.cs

Struktur Pemilihan Ema Utami STMIK AMIKOM Yogyakarta

TPI4202 e-tp.ub.ac.id. Lecture 5 Mas ud Effendi

P5 Seleksi Kondisi. A. Sidiq Purnomo Program Studi Teknik Informatika Universitas Mercu Buana Yogyakarta

Bab 3. Decision 1 (Pengambilan Keputusan)

PRAKTIKUM 4 PENGAMBILAN KEPUTUSAN

OPERATOR, PERULANGAN DAN SELEKSI KONDISI

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

KENDALI PROSES. 6.1 PENYELEKSIAN KONDISI (Selection)

Struktur Kontrol. (Repetition)

Struktur dan Kondisi Perulangan. Struktur Kondisi

Selection, Looping, Branching

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

3. Struktur Perulangan dalam C++

Aliran Kendali (Flow Control)

Teori Algoritma. Jenis seleksi

Algoritma Pemrograman

Pengenalan C++ Oleh : Dewi Sartika

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK Universitas Widyatama UJIAN TENGAH SEMESTER TA. 2009/2010

Soal hari Selasa (13/10) Latihan 7 AN

Definisi Percabangan

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

MODUL. Perulangan (Looping) Modul Praktikum C++ Pemrograman Dasar. Semester Genap 2017/2018

Nama, Tipe, Ekspresi, dan Nilai

STRUKTUR DATA MENGGUNAKAN C++ Windha Mega PD, S.Kom

OPERASI SELEKSI PEMROGRAMAN C++

TPI4202 e-tp.ub.ac.id. Lecture 5

PEMROGRAMAN BERORIENTASI OBJEK. Pengulangan. Budhi Irawan, S.Si, M.T

DASAR PEMROGRAMAN. PERCABANGAN ( if, if else, if ternary, nested if, switch ) Djoko Soerjanto, M.Kom

Konstruksi Dasar Algoritma

Dasar Pemrograman. Kondisi dan Perulangan. By : Hendri Sopryadi, S.Kom, M.T.I

ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S.

PRAKTIKUM 4 PENGAMBILAN KEPUTUSAN

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VIII

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

Pemrograman I Bab V Percabangan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

MODUL IV Analisis Kasus/Pemilihan

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Pernyataan if MODUL V PERCABANGAN

Object Oriented Programming (OOP)

Algoritma Pemrograman

C++ menyediakan dua perintah pengambilan keputusan yaitu perintah IF dan perintah SWITCH yang disertai dengan CASE

Pertemuan Ke-5 Penyeleksian Kondisi. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Algoritma dan Pemrograman. Pertemuan Ke-9 Statement Pengulangan 2

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Percabangan. Agus Priyanto, M.Kom

PERTEMUAN 4 PENGEMBANGAN PSEUDOCODE STRUKTUR KONTROL PEMILIHAN

Pemilihan. Overview. Tujuan. 1.1 Bentuk Umum IF dan Variasinya

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

MODUL III CONTROL FLOW & FLOWCHART

Pertemuan 3 Struktur Kondisi dan Perulangan

STRUKTUR DASAR ALGORITMA. Rio Widyatmoko,

Struktur Kondisi dan Perulangan

Algoritma dan Pemrograman

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Pertemuan 2. Statement IF

Percabangan & Perulangan

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-3 - Hal 1

Transkripsi:

ALGORITMA PEMROGRAMAN (Semester 1 - IF6110202) Pertemuan 5 PEMILIHAN/PERCABANGAN Jadwal: Selasa, 24/10/2017, 10:20-12.00 (2 sks) Dosen:Condro Kartiko

CAPAIAN PEMBELAJARAN UMUM Setelah mengikuti mata kuliah Algoritma Pemrograman, Mahasiswa mampu membuat algoritma dalam bentuk pseudocode dan flowchart serta membangun program untuk menyelesaikan permasalahan yang sederhana/mudah

CAPAIAN PEMBELAJARAN KHUSUS Setelah menyelesaikan pertemuan ke-5 ini diharapkan mahasiswa mampu menerapkan algoritma pemilihan/percabangan ke dalam pseudocode dan program

CAPAIAN PEMBELAJARAN KHUSUS We Are Here!!!

PUSTAKA WAJIB Munir, Rinaldi., Leony Lidya. 2016. Algoritma dan Pemrograman Dalam Bahasa Pascal, C, dan C++ Edisi Keenam. Bandung: Penerbit Informatika. BAB 7 PEMILIHAN

SUB POKOK BAHASAN Pendahuluan Menganalisis Kasus Satu Kasus Dua Kasus Tiga Kasus atau Lebih Konstruksi Case Translasi Algoritma dengan Struktur Pemilihan dalam C++ Contoh Soal dan Pembahasan

PENDAHULUAN (1) Apa yang anda ketahui tentang konsep Percabangan? Percabangan?

PENDAHULUAN (2) Pilih mana ya A B Ada 2 wanita, A dan B. B itu kurang cantik tapi baik dan pintar, sedangkan A itu cantik dan baik tapi kurang pintar. Pilih A atau B?

PENDAHULUAN (3) Percabangan adalah adalah suatu kondisi dimana sebuah instruksi tidak dijalankan secara sekuensial, tetapi lebih berdasarkan pada kondisi. Pernyataan percabangan memungkinkan suatu pernyataan dieksekusi hanya jika suatu kondisi terpenuhi atau tidak terpenuhi.

PENDAHULUAN (4) Program hanya akan menjalankan statement yang ada di dalam percabangan jika kondisi bernilai benar atau true. Kondisi pada percabangan harus berupa operator Boolean. Contoh: int a = 5 // statement bukan merupakan kondisi int a == 5 // statement yang berupa kondisi Kondisi menggunakan operator operator Boolean yang hanya memberikan hasil true atau false seperti ==, >, <, >=, <=,!=, &, &&,,

JENIS STRUKTUR PERCABANGAN

IF.. ELSE (1) Digunakan untuk menguji sebuah kondisi. Bila kondisi yang diuji terpenuhi, program akan menjalankan pernyataan pernyataan tertentu Bila kondisi yg diuji salah, program akan menjalankan pernyataan lain.

IF.. ELSE (2) Bentuk umumnya adalah : IF kondisi then {pernyataan yg dijalankan jika kondisi terpenuhi} else {pernyataan yg dijalankan jika kondisi tidak terpenuhi}

JENIS PERCABANGAN IF Proses percabangan IF memiliki tiga kasus, antara lain : Percabangan Tunggal Percabangan Ganda Percabangan Lebih dari 2

PERCABANGAN TUNGGAL (1) Percabangan tunggal bekerja apabila hanya ada SATU alternatif instruksi saja yang dijalankan. Logika ini memungkinkan kompiler untuk menjalankan sebuah instruksi atau tidak sama sekali. Kompiler baru akan menjalankan instruksi yang ada di dalam notasi percabangan apabila kondisi yang diinginkan terpenuhi atau memberikan nilai akhir true Apabila kondisi tersebut memberikan nilai akhir false maka tidak akan ada instruksi yang dijalankan.

PERCABANGAN TUNGGAL (2) //jika hanya terdiri satu statement if (kondisi) statemen //jika terdapat lebih dari satu statement if (kondisi) { statemen1; statemen2;.. }

PERCABANGAN TUNGGAL (3)

PERCABANGAN TUNGGAL (4) #include<iostream.h> #include<conio.h> main(){ int nilai; cout<< Masukkan Nilai = ;cin>>nilai; if (nilai>0) cout<< Angkanya adalah bilangan positif ; getch();}

PERCABANGAN GANDA(1) Percabangan ganda apabila terdapat DUA alternatif instruksi yang dijalankan. Logika ini memungkinkan kompiler menjalankan salah satu dari DUA alternatif instruksi yang ada, dan salah satu instruksi pasti dijalankan. Struktur percabangan jenis ini sedikit lebih kompleks bila dibandingkan dengan struktur yang hanya memiliki satu buah kondisi.

PERCABANGAN GANDA(2) if (kondisi) { statemen_jika_kondisi_terpenuhi; } else { statemen_jika_kondisi_tidak_terpenuhi; }

PERCABANGAN GANDA(3) Dalam menuliskan kondisi/syarat selalu digunakan operator relasional sebagai sarana untuk melakukan proses pengecekan : Operator Arti > Lebih besar < Lebih kecil = = Sama dengan >= Lebih atau sama <= Kurang atau sama!= Tidak sama dengan

PERCABANGAN GANDA(4) #include<iostream.h> #include<conio.h> main(){ int nilai; cout<<"masukkan Nilai = ;cin>>nilai; if (nilai % 2 == 0) cout<< adalah bilangan genap"; else cout<< adalah bilangan ganjil"; getch();}

PERCABANGAN LEBIH DARI DUA (1) Pada dasarnya hanya terdapat DUA jenis seleksi dalam struktur algoritma pemrograman, namun bukan berarti hanya bisa dikembangkan pada DUA jenis tersebut saja. Struktur seleksi dapat dikembangkan menjadi bentuk yang tidak terbatas dan dapat dikombinasikan kedalam bentuk perulangan selama notasi penulisannya tidak terdapat kesalahan. Kemampuan logika seseorang dalam merancang program dan mengamati dari permasalahan yang ada menjadi bagian yang paling penting dalam melakukan pengembangan dari bentuk seleksi ini. Dibawah ini akan diberikan contoh seleksi menggunakan kondisi lebih dari DUA

PERCABANGAN LEBIH DARI DUA (2) Percabangan jenis ini merupakan perluasan dari struktur percabangan dengan satu dan dua kondisi. Strukturnya yaitu : if (kondisi_1) {statemen_jika_kondisi_1_terpenuhi;} else if (kondisi_2) {statemen_jika_kondisi_2_terpenuhi;} else if (kondisi_3) else {statemen_jika_kondisi_3_terpenuhi;} {statemen_jika_semua_kondisi_diatas_tdk_terpenuhi;}

PERCABANGAN LEBIH DARI DUA (3)

PERCABANGAN LEBIH DARI DUA (4) #include<iostream.h> #include<conio.h> main(){ int bil; cout<< Input angka yg akan dicek ;cin>>bil; if (bil > 0) {cout<<bil<<" adalah bilangan Positif ;} else if (bil < 0) {cout<<bil<<" adalah bilangan Negatif ;} else {cout<<"anda menginputkan bilangan Nol ;} getch();}

APA BEDANYA?

SWITCH (1) Selain menggunakan struktur if, juga bisa mempunyai percabangan dengan menggunakan switch. Hampir sama dengan struktur percabangan IF, tetapi lebih cocok digunakan jika kondisi yang diperiksa sangat banyak Digunakan untuk menyederhanakan if..else if.. Mempunyai banyak kondisi. Bentuk umum struktur percabangan switch yaitu :

SWITCH (2) Kondisi yang diperiksa harus berupa data ordinal (bertipe integer atau char), dan tidak boleh bertipe real

SWITCH (3) switch (ekspresi) { case nilai_konstanta1 : statemen(pernyataan); break; case nilai_konstanta2 : statemen(pernyataan); break;. default : statemen(pernyataan)_alternatif; }

SWITCH (4) #include <iostream.h> #include <conio.h> main() { int a; cout<<"masukkan bilangan: ;cin>>a; switch (a){ case 1 : cout<<"hari ke "<<a<< :Minggu"; break;

SWITCH (5) case 2 : cout<<"hari ke "<<a<<" : Senin"; break; case 3 : cout<<"hari ke "<<a<<" : Selasa"; break; case 4 : cout<<"hari ke "<<a<<" : Rabu"; break;

SWITCH (6) case 5 : cout<<"hari ke "<<a<<" : Kamis"; break; case 6 : cout<<"hari ke "<<a<<" : Jum'at"; break; case 7 : cout<<"hari ke "<<a<<" : Sabtu"; break; default : cout<<"tidak terdapat hari ke"<<a; } getch();}

PERNYATAAN SWITCH-CASE Struktur logika switch-case dapat digambarkan sbb.: case a false case b false true true case a action(s) case b action(s) break break case z false default action(s) true case z action(s) break

PERBEDAAN IF DAN CASE Unggul yang mana antara struktur if dengan struktur case.? Sebenarnya kalau dikatakan unggul, keduanya sama-sama unggul. Karena struktur case memiliki kelebihan dari pada struktur if, dan struktur if pun memiliki kelebihan dari pada struktur case. Kelebihan statemen case terletak pada struktur script atau codenya yang lebih ringkas dibandingkan dengan struktur pada if. Sedangkan kelebihan statemen if yaitu struktur if dapat menyelesaikan hampir seluruh permasalahan, sedang case tidak semua permasalahan dapat diselesaikan dengan ini. Mengapa statemen if dapat menyelesaikan hampir semua masalah, sedangkan statemen case tidak bisa? Karena pada statemen if dapat menjalankan suatu percabangan di dalam percabangan yang disebut juga dengan istilah if bersarang, dan pada statemen case tidak ada hal yang seperti itu.

Selanjutnya Baca Munir, Rinaldi., Leony Lidya. 2016. Algoritma dan Pemrograman Dalam Bahasa Pascal, C, dan C++ Edisi Keenam. Bandung: Penerbit Informatika. BAB 8 PENGULANGAN

Tugas (1) Petunjuk pengerjaan: Kerjakan beberapa latihan soal di bawah ini, diketik dalam format PDF dan dikumpulkan via email ke condro.kartiko@ittelkom-pwt.ac.id paling lambat Minggu, tanggal 29 Oktober 2017 pukul 23:59 WIB. Format file dan subjek email: [ALPRO]S1IF05A Tugas4_NIM1_Nama1,NIM2_Nama2,NIM3_Nama3 1. [poin 10]Buatlah algoritma yang membaca sebuah bilangan bulat positif lalu menentukan apakah bilangan tersebut merupakan kelipatan 4. 2. [poin 10]Pasar Swalayan X memberikan diskon harga bagi pembeli yang nilai total belanjanya lebih dari Rp100.000. Tulislah algoritma untuk menentukan nilai belanja setelah dikurangi diskon. Data masukan adalah nilai total belanja pembeli, sedangkan keluarannya adalah diskon harga dan nilai belanja setelah dikurangi diskon.

Tugas (2)

Tugas (3) 6. [poin 10]Jika kita berbelanja di pasar swalayan/supermarket, nilai total belanja kita seringkali bukan kelipatan pecahan rupiah yang berlaku. Misalnya, nilai total belanja adalah Rp19.212,-. Andaikan saat ini pecahan rupiah yang berlaku paling kecil Rp25,-. Selain itu, juga ada pecahan Rp50,- dan Rp100,-. Umumnya kasir pasar swalayan membulatkan nilai belanja ke pecahan yang terbesar. Jadi Rp19.212,- dibulatkan menjadi Rp19.225,-. Hal ini jelas merugikan konsumen. Misalkan Anda memiliki pasar swalayan yang jujur dan tidak merugikan pembeli, sehingga jika ada nilai belanja yang bukan kelipatan pecahan yang ada, maka nilai belanja itu dibulatkan ke pecahan terendah. Jadi, Rp19.212,- dibulatkan menjadi Rp19.200,-. Tulislah algoritma yang membaca nilai belanja (integer) lalu membulatkannya ke nilai uang dengan pecahan terendah. 7. [poin 10](a) Tuliskan algoritma yang membaca bilangan bulat positif dalam rentang 1 sampai 10, lalu mengonversinya ke dalam angka romawi. (b) Kembangkan algoritma (a) di atas sehingga dapat mengonversi bilangan bulat positif sembarang ke dalam angka romawinya.

Tugas (4) 8. [poin 10]Dalam bidang pengolahan citra (image processing), elemen gambar terkecil disebut pixel (picture element). Nilai pixel untuk gambar 256 warna adalah dari 0 sampai 255. Operasi-operasi terhadap pixel seringkali berada di luar rentang nilai ini. Jika ini kasusnya, maka nilai hasil operasi harus dipotong (clipping) sehingga tetap berada di dalam interval [0..25]. Jika nilai hasil operasi lebih besar dari 255, maka nilai tersebut dipotong menjadi 255, dan bila negatif maka dipotong menjadi 0. Dibaca sebuah nilai hasil operasi pengolahan citra, buatlah algoritma untuk melakukan clipping tersebut. 9. [poin 10]Dibaca dua buah hari, hari pertama dan hari kedua. Tulislah algoritma untuk menghitung durasi (selisih) kedua hari tersebut. Misalnya, hari pertama Kamis dan hari kedua Senin, maka dari Kamis ke Senin durasinya 5 hari. 10. [poin 10]Tulislah algoritma C++ yang membaca umur seseorang, lalu menentukan apakah umur termasuk kategori balita (0-5), anak-anak (5-12), remaja (12-20), dewasa (20-60), atau tua (60 ke atas).