struktur kontrol pada c

11
Struktur penyeleksian Struktur penyeleksian : : Struktur Kontrol Pada C Struktur Kontrol Pada C • Seringkali instruksi - instruksi dilaksanakan bila suatu persyaratan dipenuhi, dalam struktur penyeleksian, suatu instruksi atau sekelompok instruksi dapat dilewati, sementara instruksi lain dijalankan. Konstruksi if Sintaks : if (ekspresi boolean) statement; Atau If (ekspresi boolean){ statement1; statement2; } Blok statement

Upload: ingrid

Post on 16-Jan-2016

46 views

Category:

Documents


0 download

DESCRIPTION

Struktur Kontrol Pada C. Blok statement. Struktur penyeleksian :. Seringkali instruksi - instruksi dilaksanakan bila suatu persyaratan dipenuhi, dalam struktur penyeleksian, suatu instruksi atau sekelompok instruksi dapat dilewati, sementara instruksi lain dijalankan. Konstruksi if Sintaks : - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Struktur Kontrol Pada C

Struktur penyeleksianStruktur penyeleksian : :Struktur Kontrol Pada CStruktur Kontrol Pada CStruktur Kontrol Pada CStruktur Kontrol Pada C

• Seringkali instruksi - instruksi dilaksanakan bila suatu persyaratan dipenuhi, dalam struktur penyeleksian, suatu instruksi atau sekelompok instruksi dapat dilewati, sementara instruksi lain dijalankan.

Konstruksi if

Sintaks :

if (ekspresi boolean) statement;

Atau

If (ekspresi boolean){ statement1; statement2;

}

Blok statement

Page 2: Struktur Kontrol Pada C

• Jika ekspresi boolean menghasilkan nilai TRUE, maka

statement atau blok statement akan dilaksanakan.

Konstruksi if-else

Sintaks :

if (ekspresi boolean) statement1; else statement2;

Atau

if (ekspresi boolean){ statement1; statement2; } else { statement3; statement4; }

Blok statement1

Blok statement2

Page 3: Struktur Kontrol Pada C

• Jika ekspresi boolean menghasilkan nilai TRUE, maka statement1 dan statement2 atau blok statement1 yang akan dilaksanakan, jika tidak (FALSE) maka statement3 dan statement4 atau blok statement2 yang akan dilaksanakan.

• Contoh Program untuk mendapatkan akar-akar dari persamaan kwardrat.

Algoritma : 

1. Dapatkan koefisien a, b, dan c dari keyboard2. Hitung diskriminan d = b2 – 4*a*c3. Bila d >= 0 maka hitung x1 dan x2

Bila d < 0 maka stop4. Stop

Page 4: Struktur Kontrol Pada C

Dapatkan x1, dengan rumus :Dapatkan x1, dengan rumus :    DDapatkan x2, dengan rumus :apatkan x2, dengan rumus :

-b + d 2.a

-b - d 2.a

/*------------------------------ Program Pers_Kwadrat ------------------------------*/#include <stdio.h>#include <math.h> float a,b,c,d,x1,x2;main(){ /* Memasukkan data koef. a, b, dan c */printf(“Masukan koef. a : “); scanf(“%f”,&a);printf(“Masukan koef. b : “); scanf(“%f”,&b);printf(”Masukan koef. c : ”); scanf(“%f”,&c);

Page 5: Struktur Kontrol Pada C

/* Menghitung Diskriminant */ d = b*b - 4 * a * c; /* Menghitung x1 dan x2 serta Menampilkan hasil */ if (d >= 0){ x1 = (-b + sqrt(d)) / (2 * a); x2 = (-b - sqrt(d)) / (2 * a); printf(“x1=%f\n x2=%f\n”,x1,x2); } else { printf(”Akar Persamaan Imajiner”); }}

Page 6: Struktur Kontrol Pada C

Konstruksi if-else dapat digunakan secara bertingkat(nested)

Contoh:

if (ekspresi boolean1) statement1; else if (ekspresi boolean2) statement2; else if (ekspresi boolean3) statement3; ..... else if (ekspresi booleanN) statementN;

Perbedaan Alur logika if-else dengan if

Statement_1

True?

Statement_A Statement_B

Statement_2

Ya

TidakIF

THEN ELSE

Statement_1

True?

Statement_A

Statement_2

Ya

TidakIF

THEN

Alur LogikaAlur Logikaif - elseif - else

Alur Logika ifAlur Logika if

Page 7: Struktur Kontrol Pada C

Konstruksi switch -caseKonstruksi switch -case

Konstruksi ini digunakan sebagai pengganti konstruksi if-else, bila konstruksi if-else bertingkat terlalu jauh, sehingga menjadi sulit dibaca.

Sintaks konstruksi switch-case :

switch (ekspresi) { case constant_1 : statements_1; break; case constant_2 : statements_2; break; … case constant_N : statements_N; break;

default : statements; }

Page 8: Struktur Kontrol Pada C

Contoh Program Menghitung Nilai Ujian :Contoh Program Menghitung Nilai Ujian :

Tabel Nilai

Nilai Akhir Bobot Nilai Huruf

85 – 100 4 A : Sangat Baik

75 – 84 3 B : Baik

65 – 74 2 C : Cukup

50 – 64 1 D : Kurang

0 - 49 0 E : Gagal

Mata kuliah Algoritma dan Pemrograman dilengkapi dengan praktikum

di Lab. Software, maka nilai akhir dihitung dari :

Nilai Teori = 50%(Ujian Semester) + 30%(Ujian Mid Semester) + 10%(Tugas Mandiri Teori) + 10%(Absen Teori);

Nilai Praktikum = 40%(Ujian Praktikum) + 30%(Kuis Praktikum) + 15%(TM Praktikum) + 15%(Abs Praktikum);

Nilai Akhir = (NilaiTeori + NilaiPraktikum)/2;

Page 9: Struktur Kontrol Pada C

/*------------------------- Program Nilai_Ujian -------------------------*/#include <stdio.h>#include <stdlib.h>#include <math.h> int AbsensiT, AbsensiP;int TugasT, TugasP;int Mid, Kuis, Nilai_akhir;int FinalT, FinalP;float NilaiT, NilaiP;char Jawab;

main(){clrscr();printf(”Teruskan [Y/T] ? ”); scanf(“%c”,&Jawab);

Page 10: Struktur Kontrol Pada C

while (toupper(Jawab) == ’Y’){ printf(”Kehadiran Teori (0 -100) : ”);scanf(“%d”,&AbsensiT); printf(”Kehadiran Praktikum (0 -100) : ”);scanf(“%d”,&AbsensiP);

printf(”Tugas Mandiri Teori (0 -100) : ”);scanf(“%d”,&TugasT);printf(”Tugas Mandiri Praktikum (0 -100) : ”);scanf(“%d”,&TugasP);

printf(”Mid Semester Teori (0 -100) : ”);scanf(”%d”,&Mid);printf(”Mid Semester Praktikum (0 -100) : ”);scanf(”%d”,&Kuis);

printf(“Nilai Semester Teori (0 -100) : “);scanf(“%d”,&FinalT);printf(“Nilai Semester Praktikum (0 -100) : “);scanf(“%d”,&FinalP); 

Page 11: Struktur Kontrol Pada C

NilaiT = (0.1*AbsensiT)+(0.1*TugasT)+ (0.3*Mid)+ 0.5*FinalT);  NilaiP = 0.15*AbsensiP + 0.15*TugasT + 0.3*Kuis + 0.5*FinalP; Nilai_akhir = ceil((NilaiT + NilaiP)/2);

if(Nilai_akhir >=85) printf(“Nilai_akhir = A”); else if(Nilai_akhir >=75) printf(“Nilai_akhir= B”); else if(Nilai_akhir >=65) printf(“Nilai_akhir = C”); else if(Nilai_akhir >=50) printf(“Nilai_akhir = D”); else printf(“Nilai_akhir = E”); printf(“\n”); printf(“Teruskan [Y/T] ? “); scanf(“%c”,&Jawab); }}