4a struktur percabangan if

24
Dasar-Dasar Pemrograman Struktur Percabangan IF-ELSE dan CASE-OF

Upload: oci-gy-binnund

Post on 27-Dec-2015

137 views

Category:

Documents


6 download

DESCRIPTION

materi kuliah logika percabangan pemograman c#

TRANSCRIPT

Dasar-Dasar Pemrograman

Struktur Percabangan

IF-ELSE dan CASE-OF

Struktur Kontrol

Merupakan kondisi/percabangan yang mempunyai 2 cabang, yaitu ya dan tidak.

Perintah yang digunakan:IF, IF-ELSE, IF-ELSEIF-ELSECASE-OF

IF

Statement IF memiliki beberapa variasi:IF tunggal sederhanaIF blok statementIF-ELSEIF-ELSE IF-…-ELSEIF bersarang (nested IF)IF dengan kondisi suatu variabelIF dengan kondisi jamak.

IF Tunggal Sederhana

Bentuk: if (kondisi) then statement;

Kondisi merupakan ekspresi boolean yang akan dievaluasi ke true (tidak sama dengan 0) atau false (sama dengan 0).

Jika kondisi benar (bernilai logika 1), maka statement akan diproses, jika kondisi salah (atau bernilai logika 0), maka statement tidak akan diproses.

IF Tunggal Sederhana Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>60) then writeln(‘Anda lulus’); readln;end.

Hasil:Masukkan nilai Anda : 70Anda lulus

IF Tunggal Blok Statement

Bentuk:if (kondisi) thenbegin statement 1; statement 2; ……end;

Pada bentuk ini, bila kondisi benar, maka blok statement (berada dalam begin-end) akan diproses.

IF Tunggal Blok Statement Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>60) then

begin writeln(‘Nilai Anda = ’,x); writeln(‘Anda lulus’);end;

readln;end.

Hasil:Masukkan nilai Anda : 70Nilai Anda = 70Anda lulus

IF-ELSE

Bentuk:

if (kondisi) statement1;

else statement2;Pada bentuk ini, bila kondisi benar, maka

statement yang akan diproses adalah statement1 dan bila kondisi salah, maka statement yang akan diproses adalah statement2

IF-ELSE Ex.

uses crt;

var x:integer;

begin

clrscr;

write(‘Masukkan nilai Anda : ‘);readln(x);

if (x>60) then writeln(‘Anda lulus’)

else writeln(‘Anda gagal’);

readln;

end.

Hasil:Masukkan nilai Anda : 70Anda lulus

IF-ELSE Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>60) then begin

writeln(‘Nilai Anda = ’,x); writeln(‘Anda lulus’);

end; else begin writeln(‘Nilai Anda = ’,x); writeln(‘Anda gagal’); end;readln;end.

Hasil:Masukkan nilai Anda : 70Nilai Anda = 70Anda lulus

IF-ELSE

Statement if-else juga dapat ditulis dengan dua buah statement tunggal dengan hasil yang sama.

IF-ELSE Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>60) then begin

writeln(‘Nilai Anda = ’,x); writeln(‘Anda lulus’);

end; if (x<=60) then begin writeln(‘Nilai Anda = ’,x); writeln(‘Anda gagal’); end;readln;end.

Hasil:Masukkan nilai Anda : 70Nilai Anda = 70Anda lulus

IF-ELSE IF-…-ELSE

Bentuk:

if(kondisi1) then statement1;

else if(kondisi2) then statement2;

else if(kondisi3) then statement3;

else if(kondisi4) then statement4;

else statementlain;

IF-ELSE IF-…-ELSE

Pemilihan kondisi dimulai dari kondisi1. Jika kondisi1 benar maka statement1 diproses dan

pemilihan kondisi akan berhenti. Jika kondisi1 salah, maka proses pemilihan akan dilanjutkan ke kondisi2.

Jika kondisi2 benar maka statement2 diproses dan pemilihan kondisi akan berhenti. Jika kondisi2 tidak memenuhi, maka proses pemilihan akan dilanjutkan ke kondisi3, dan seterusnya.

Jika tidak ada kondisi yang benar, maka statement yang diproses adalah statement yang mengikuti else. Penggunaan else bersifat opsional.

IF-ELSE IF-…-ELSE Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>80) then writeln(‘Anda lulus dengan nilai A’) else if (x>60) then writeln(‘Anda lulus dengan nilai B’) else if (x>40) then writeln(‘Anda lulus dengan nilai C’) else if (x>20) then writeln(‘Anda lulus dengan nilai D’) else writeln(‘Anda gagal’);readln;end.

Hasil:Masukkan nilai Anda : 70Anda lulus dengan nilai B

IF-ELSE IF-…-ELSE Ex.

uses crt;var x:integer;begin clrscr; write(‘Masukkan nilai Anda : ‘);readln(x); if (x>80) then writeln(‘Anda lulus dengan nilai A’); if (x>60) then writeln(‘Anda lulus dengan nilai B’); if (x>40) then writeln(‘Anda lulus dengan nilai C’); if (x>20) then writeln(‘Anda lulus dengan nilai D’); else writeln(‘Anda gagal’);readln;end. Hasil:

Masukkan nilai Anda : 70Anda lulus dengan nilai BAnda lulus dengan nilai CAnda lulus dengan nilai D

IF Bersarang (Nested-IF)

IF bersarang merupakan IF yang berada dalam IF lainnya. Bentuk:

if(kondisi1) then if(kondisi2) then … if(kondisin) then statement; else statement; … else statement;else statement;

IF Bersarang (Nested-IF)

Kondisi yang diseleksi pertama kali adalah kondisi terluar (kondisi1). Jjika tidak memenuhi maka statement setelah else terluar yang akan dieksekusi. Jika tidak terdapat else maka proses seleksi dihentikan. Jika kondisi1 benar, maka kondisi berikutnya (kondisi2) akan diseleksi.

Jika kondisi2 tidak benar, maka statement setelah else (dari if kondisi2) yang akan diproses. Jika untuk kondisi2 tidak ada, maka proses seleksi dihentikan.

Dengan cara yang sama, proses seleksi akan dilakukan sampai kondisin bila kondisi-kondisi sebelumnya benar.

IF Bersarang (Nested-IF) Ex.

uses crt;var x,y:integer;begin clrscr; write('Masukkan nilai teori : ');readln(x); write('Masukkan nilai praktek : ');readln(y); if ((x+y)/2>60) then if (x>60) then if (y>60) then writeln('Anda lulus') else writeln('Anda mengulang praktek') else writeln('Anda mengulang teori') else writeln('Anda gagal'); readln;end.

IF dengan Kondisi berupa Variabel

Kondisi yang diseleksi dapat bernilai benar (tidak sama dengan 0) atau salah (sama dengan 0).

IF dengan Kondisi berupa Variabel Ex.

uses crt;var x:boolean;begin clrscr; if (x) then writeln('Halo') else writeln('hai');

readln;end.

Hasil:Hai

IF dengan Kondisi Jamak

Beberapa kondisi dapat diperiksa sekaligus dalam sebuah statement IF menggunakan operator logika, yaitu and, or, not.

IF dengan Kondisi Jamak Ex.

uses crt;var x:integer;begin write(‘Masukkan nilai Anda : ‘);readln(x); if (x<=100) and (x>80) then writeln(‘Anda lulus

dengan nilai A’); if (x<=80) and (x>60) then writeln(‘Anda lulus

dengan nilai B’); if (x<=60) and (x>40) then writeln(‘Anda lulus

dengan nilai C’); if (x<=40) and (x>20) then writeln(‘Anda lulus

dengan nilai D’); if (x<=20) and (x>=0) then writeln(‘Anda gagal’); readln;end.

IF dengan Kondisi Jamak Ex.

uses crt;var x,y:integer;begin write(‘Masukkan nilai teori : ‘);readln(x); write(‘Masukkan nilai praktek : ‘);readln(y); if (x>60) or (y>60) then writeln(‘Anda lulus’); if (x>60) and (y<60) then writeln(‘Anda mengulang

praktek’); if (x<60) and (y>60) then writeln(‘Anda mengulang

teori’); if (x<60) and (y<60) then writeln(‘Anda gagal’); readln;end.