8-seleksi

20

Upload: rakabeta

Post on 12-Feb-2016

220 views

Category:

Documents


0 download

DESCRIPTION

909090909

TRANSCRIPT

Page 1: 8-Seleksi
Page 2: 8-Seleksi

Review komponen dasar pemrograman : Memasukkan Informasi Menyimpan Informasi Memanipulasi Informasi Menampilkan Informasi

+ Kendali Program

Page 3: 8-Seleksi

Kendali ProgramMengendalikan perintah-perintah

dan proses-proses dalam program

Pernyataan Bersyarat/Seleksi/Pencabangan

Pencabangan banyak Perulangan/Loop Proses Lompatan Subprogram

Page 4: 8-Seleksi

Dengan pernyataaan bersyarat/seleksi, komputer mempunyai kemampuan untuk mengambil keputusan berdasarkan kondisi

Suatu kondisi/syarat diperoleh melalui operasi-operasi dengan menggunakan operator-operator relational/komparasi dan operator-operator logika

Page 5: 8-Seleksi

Beberapa variasi pernyataan bersyarat :

Seleksi Tunggal Sederhana Seleksi Tunggal Blok Statement Seleksi Multiple “if-else” Seleksi Bersarang Seleksi dengan Kombinasi Kondisi

Page 6: 8-Seleksi

Bentuk umum :

1. if(syarat) statement1;else statement2;

2. if(syarat) { urutan statement1; }else { urutan statement2; }

Page 7: 8-Seleksi

3. if(syarat1){urutan statement1}

else if(syarat2){urutan statement2}

else if(syarat3){urutan statement3}

else //selain syarat1,2, dan 3{urutan statement4}

Page 8: 8-Seleksi

1. Statement1, statement2, urutan statement1, dsb disebut target dari if statement

2. Bentuk 1 target merupakan statement tunggal

3. Bentuk 2 target merupakan suatu urutan statement (terdiri dari > 1 statement)

4. Bentuk 3 ada banyak pilihan (> 2)

Page 9: 8-Seleksi

Syarat bisa berupa suatu pernyataan relasional atau bisa berupa bilangan

Contoh (pernyataan relasional): if(x>=2) if(y<0xF0) If(a==‘A’) If((x > y)&&(x<1))

Contoh (berupa bilangan) if(b) //dengan b suatu bilangan. diartikan sebagai //if(b!=0)

Page 10: 8-Seleksi

#include <stdio.h>Main(){float temp;printf(“Berapa suhu saat ini ?”);scanf(“%f”,&temp);if (temp>=30)

printf(“Udara terasa panas”);}

Page 11: 8-Seleksi

#include <stdio.h>#include <math.h>

Main(){ float a,b,maks;

printf(“Masukkan Bil. riil a dan b : ”);scanf(“%f %f”,&a,&b);if (a>b) maks = a;else maks = b;printf(“Bilangan terbesar : %f\n”,maks);

}

Page 12: 8-Seleksi

syarat

statement1 statement2

Ya (syarat dipenuhi)

tidak (syarat tidak dipenuhi)

Proses sebelumnya

if else

Page 13: 8-Seleksi

syarat1

statement1

statement2

Ya (syarat1 dipenuhi)

Proses sebelumnya

syarat2

statement3

ifTidak(syarat1 tdk dipenuhi)

Ya (syarat2 dipenuhi)

Tidak(syarat2 tdk dipenuhi)

Else if

else

Page 14: 8-Seleksi

Untuk mengatur proses dengan banyak pencabangan

Perlu variabel integer atau char dengan bbrp kemungkinan nilai

Bentuk statement bisa tunggal atau statement switch bersarang

Page 15: 8-Seleksi

switch(expression){case constant1:statement sequence_1break;case constant2:statement sequence_2break;case constant3:statement sequence_3break;…..…..default:statement sequence_n}

Page 16: 8-Seleksi

Struktur switch-case tsb ekivalen denganstruktur if – else if sbb:

if(expression==constant1){statement sequence_1}else if(expression==constant2){statement sequence_2}else if(expression==constant3) {statement sequence_3}…………else {statement_sequence_n}

Page 17: 8-Seleksi

Constant adalah bilangan bulat atau karakter, tidak boleh berupa bilangan float

Constant1,constant2,dst harus berbeda Constant harus merupakan suatu literal,

sedangkan expression adalah suatu variabel Setiap case diakhiri break dan proses switch

berakhir. Tanpa break proses dilanjutkan ke case berikutnya

Jika tidak ada case yang sesuai, proses dalam default akan dikerjakan

default bersifat optional

Page 18: 8-Seleksi

Expression =constan1?

statement1

statement2

Ya

Proses sebelumnya

Expression=constan2?

statement3

Tidak

default

Page 19: 8-Seleksi

switch (pilih_bangun){// bujursangkar atau lingkarancase ‘A’ : /* bujursangkar */switch (pilih_hitung){// luas atau isicase 1 :break;case 2 :break; }break;case ‘B’ : /* lingkaran */break;}

Page 20: 8-Seleksi

1. Gambarlah Flowchart untuk menghitung akar-akar persamaan kuadrat :

ax2 + bx + c = 02. Implementasikan Flowchart pada soal

di atas menjadi program dengan Bahasa C, menggunakan perintah :

a. if – elseb. switch – case