• Tidak ada hasil yang ditemukan

Think Different ProgLan: Review DPK (Percabangan)

N/A
N/A
Protected

Academic year: 2017

Membagikan "Think Different ProgLan: Review DPK (Percabangan)"

Copied!
27
0
0

Teks penuh

(1)

REVIEW

Issa Arwani, S.kom, M.sc.

[email protected]

http://power.lecture.ub.ac.id

(2)

DEFINISI 

MASALAH

MEMBUAT 

MODEL

ALGORITMA

RANCANG 

TULIS PROGRAM

COMPILE

Sintak Err

Executable code:  => 

Run

Output Err

Y

Y

T

(3)

Apa yang anda ketahui

tentang konsep

Percabangan?

(4)

Case

Ada 2 wanita, A dan B. B itu kurang cantik tapi

baik dan pintar, sedangkan A itu cantik dan baik

A

B

Pilih

mana ya

(5)

Dalam sebuah algoritma, seringkali beberapa instruksi

harus dilaksanakan bila suatu persyaratan dipenuhi

(bernilai benar) dan sebaliknya.

Dalam struktur pencabangan bersyarat, suatu instruksi

atau sekelompok instruksi dapat dilewati, sementara

instruksi lain dijalankan.

Pernyataan pencabangan bersyarat terdiri dari:

if

if-else

(6)
(7)

Sintaks :

if (ekspresi boolean) statement;

atau

if (ekspresi boolean)

{

statement1;

statement2;

……

}

Jika ekspresi boolean bernilai TRUE, maka statement atau blok

statement akan dilaksanakan.

(8)
(9)

Sintaks :

if (ekspresi boolean) statement_01;

else statement_11;

atau

if (ekspresi boolean)

{ statement_01;

……

}

else

{ statement_11;

…...

}

Jika ekspresi boolean bernilai TRUE, maka

statement_01

atau

blok statement_01

yang dilaksanakan, jika bernilai FALSE maka

statement_01

atau

blok statement_11

yang dilaksanakan

.

Blok statement_01

(10)

#include <stdio.h>

#include <iostream.h>

int main() {

int jmlAnak;

double gajiKtr, tunjangan, persenTunjangan = 0.2;

printf("PERHITUNGAN TUNJANGAN GAJI\n\n");

printf("Gaji Kotor? "); scanf("%lf", &gajiKtr);

printf("Jumlah Anak? "); scanf("%lf", &jmlAnak);

if (jmlAnak>2) persenTunjangan = 0.3;

tunjangan = persenTunjangan*gajiKtr;

printf("Besar Tunjangan = Rp. %10.2lf\n\n", tunjangan);

system("PAUSE");

(11)

#include <stdio.h>

#include <iostream.h>

int main(){

int jmlAnak;

float gajiKtr, tunjangan, potongan, persenTunjangan = 0.2,

persenPotongan = 0.05;

printf(“PERHITUNGAN TUNJANGAN & POTONGAN GAJI\N\N”);

printf("Gaji Kotor? "); scanf("%f", &gajiKtr);

printf("Jumlah Anak? "); scanf("%f", &jmlAnak);

if (jmlAnak>2) { persenTunjangan = 0.3;

persenPotongan = 0.07;

}

tunjangan = persenTunjangan*gajiKtr;

potongan = persenPotongan*gajiKtr;

printf("Besar Tunjangan = Rp. %10.2f\n", tunjangan);

printf("Besar Potongan = Rp. %10.2f\n\n", potongan);

system("PAUSE");

(12)

Dalam struktur kondisi if...else minimal terdapat dua

pernyataan. Jika kondisi yang diperiksa bernilai benar atau

terpenuhi maka pernyataan pertama yang dilaksanakan dan

jika kondisi yang diperiksa bernilai salah maka pernyataan yang

kedua yang dilaksanakan. Bentuk umumnya adalah sebagai

berikut :

if(kondisi)

pernyataan-1

else

(13)
(14)
(15)

Konstruksi if-else dapat digunakan secara bertingkat atau

bersarang (nested)

(16)
(17)
(18)
(19)

Penulisan if­else  harus jelas maksudnya....

Contoh penulisan if­else yang kurang jelas meskipun tidak salah.

#include <stdio.h>

#include <iostream.h>

int main(){

int suhu;

(20)

Pernyataan

switch-case

dapat dipergunakan sebagai

pengganti pernyataan if-else, jika pernyataan if-else

bertingkat terlalu banyak, sehingga menjadi sulit dibaca.

Sintaks pernyataan switch-case

switch

(ekspresi integer) {

case constant1 : statements1; break;

case constant2 : statements2; break;

.

.

(21)

Struktur logika

switch-case

dapat digambarkan sbb.:

case b

case a

case z

case a action(s)

case b action(s)

case z action(s)

break

break

break

default action(s)

true

true

true

false

false

false

case b

case a

case z

case a action(s)

case b action(s)

case z action(s)

(22)

Contoh :

#include <stdio.h>

#include <iostream.h>

int main()

{ float bil1, bil2; char op;

scanf("%f %c %f", &bil1, &op, &bil2);

switch(op){ case '+': printf(" = %f", bil1 + bil2); break;

case '-' : printf(" = %f", bil1 - bil2); break;

case '*' : printf(" = %f", bil1 * bil2); break;

case '/' : printf(" = %f", bil1 / bil2); break;

default : printf("operator TAK DIKENAL");

}

printf("\n\n");

(23)

Perhatikan potongan program dibawah ini:

if(n > 0)

if(a > b)

z = a;

else

z = b;

Jelaskan keyword  

else 

berpasangan dengan if yang mana ?

Perbaiki cara penulisan potongan program diatas, agar menjadi lebih jelas 

(24)

Buat program untuk menginput nilai IPK mahasiswa dan

berikan penilaian :

• 3.5 - 4.0 Sangat Memuaskan

• 3.0 - 3.4 Memuaskan

• 2.5 – 2.9 Baik Sekali

• 2.0 – 2.4 Baik

• Dibawah 2.0 Kurang

(25)
(26)
(27)

End of This Session...

Referensi

Dokumen terkait

z Kondisi: akan diperiksa, jika bernilai true maka perulangan akan dilanjutkan.. dan jika bernilai false maka perulangan

Jika p adalah pernyataan bernilai benar dan g adalah pernyataan yang bernilai salah, maka pernyataan berikut yang bernilai benar adalah ….. Grafik fungsi pada gambar berikut

Pengulangan akan terus dilakukan selama kondisi terpenuhi (bernilai TRUE), dan jika kondisi tidak terpenuhi (bernilai FALSE), maka AKSI tidak dilakukan atau pengulangan

Jika P bernilai benar maka P akan bernilai salah, Namun jika P bernilai salah maka P akan bernilai benar.. Konjungsi adalah suatu pernyataan majemuk yang ditandai

Jika pernyataan p bernilai salah dan pernyataan q bernilai benar, maka pernyataan berikut yang bernilai salah

Jika kondisi bernilai benar, maka statement yang akan dijalankan adalah statement setelah if tetapi jika kondisi bernilai salah, maka statement yang akan dijalankan adalah

Ingkaran suatu pernyataan adalah pernyataan baru yang bernilai salah jika pernyataan semula benar atau bernilai benar jika pernyataan semula salah.. Pernyataan “p”

ƒ Jika kondisi-1 bernilai benar, maka kondisi berikutnya yang lebih dalam kondisi-2 akan diseleksi.. Jika kondisi-2 bernilai salah, maka statemen else pasangan dari if yang bersangkutan