Struktur Kontrol (if / if – else )
Terdapat 3 macam struktur kontrol
· Sequential structure / urut
Merupakan bentuk dasar dari urutan program
Program akan selalu berjalan dari atas ke bawah secara urut (sesuai bagaimana program ditulis)
· Selection / Decision structure / Pemilihan
C++ memiliki bentuk à if, if-else, dan switch
· Repetition / Looping structure / Perulangan
C++ memiliki bentuk à while, do-while, dan for
Pada materi ini akan dibahas tentang Selection / Decision structure
Digunakan untuk memilih salah satu dari pilihan yang ada
Bentuk umum (1)
if (kondisi)
Statement ;
Statement pada bentuk di atas akan dijalankan jika kondisinya bernilai benar atau TRUE atau 1.
Jika kondisinya bernilai salah atau FALSE atau 0, tidak ada suatu statement khusus yang harus dijalankan, sehingga program akan meneruskan ke perintah sesuai urutan selanjutnya
Atau jika statemen yang dijalankan lebih dari satu baris (blok statement) maka statement dituliskan diantara dua tanda kurung kurawal {}
if (kondisi)
{
Statement1 ;
Statement2 ;
}
Catatan :
Perhatikan gaya penulisan program diatas, adanya indentasi akan memudahkan pembacaan program
Program :
#include <iostream.h>
main()
{
int umur=70; // deklarasi variabel sekaligus assignment
if (umur > 60)
cout<<“Anda Sudah Tua…”;
}
Output hasil jadi program umur:
Permasalahan
Bagaimana OUTPUT yang dihasilkan jika assignment untuk umur diberikan nilai 20 :
int umur = 20
Ternyata pada OUTPUT tidak menghasilkan tulisan apapun, ini dikarenakan statement hanya diberikan jika kondisi umur > 60 terpenuhi
Contoh menggunakan blok statement
#include <iostream.h>
void main(){
int umur=70;
if (umur > 60) {
cout<<“Anda sudah berumur”<<umur<<“Tahun\n”;
cout<<“Anda Sudah Tua…”;
}
}
Permasalahan
Sama dengan sebelumnya, bagaimana jika
int umur = 20
Hasil output juga akan kosong
è Anda tahu mengapa ?
Bagaimana output program berikut ini:
#include <iostream.h>
void main() {
int umur=20;
if (umur > 60)
cout<<“Anda sudah Tua…\n”;
cout<<“Terima kasih telah mengisi form ini”;
}
if – else
Apabila diinginkan untuk menjalankan suatu statement tertentu jika kondisi bernilai salah/FALSE/0, bisa diberikan alternatif menggunakan ELSE
Bentuk Umum (2):
if (kondisi)
Statement1
else
Statement2
Untuk Statement berbentuk blok / lebih dari satu baris :
if (kondisi)
{
Statement1;
Statement2;
………
}
else
{
Statement1;
Statement2;
………
}
Programnya :
#include <iostream.h>
void main(){
int umur=20; // deklarasi variabel sekaligus assignment
if (umur > 60)
cout<<“Anda Sudah Tua…”;
else
cout<<“Anda Masih Muda…”;
}
Contoh lainnya:
#include <iostream.h>
void main() {
int nilai;
cout<< “Masukkan Nilai : “;
cin >> nilai;
if (nilai >=55) {
cout<<“Anda mendapat nilai “<<nilai<<“\n”;
cout<<“Anda dinyatakan Lulus”;
} else {
cout<<“Nilai anda dibawah 55, anda harus mengulang!”;
}
}
Bentuk if – else kompleks
Apabila tedapat lebih dari 2 kemungkinan pilihan maka dapat dikerjakan dengan bentuk if-else kompleks
Bentuk umum (3)
if (kondisi1)
Statement1;
else if (kondisi2)
Statement2;
else if (kondisi3)
Statement3
...
...
else
Statement;
Contoh :
#include <iostream.h>
void main() {
int angka;
cout<<“Masukkan sebuah angka :”;
cin>>angka;
if (angka == 50) // operator == bukan = (asignment)
cout<<“Angka yang anda masukkan adalah 50”;
else if (angka > 50)
cout<<“Angka yang anda masukkan lebih besar dari 50”;
else
cout<<“Angka yang anda masukkan lebih kecil dari 50”;
}
Penangganan String
Seperti diketahui bahwa string merupakan rangkaian karakter sehingga untuk melakukan operator relasional terhadap string membutuhkan fungsi khusus.
Perbandingan dua string dengan menuliskan :
if (nama == “totok”) à akan selalu menghasilkan nilai false / salah
Untuk membandingkan dua buah string digunakan fungsi :
strcmp(string1,string2)
è jika string1 isinya sama dengan string2 maka fungsi tersebut akan menghasilkan nilai 0
Contoh :
#include <iostream.h>
#include <conio.h>
void main(){
char user[20];
cout<<“Isikan nama user : “;
cin.get(user,21); // cara pengisian string dengan cin
if (strcmp(user,”cosmas”)==0)
cout<<“User terdaftar, silakan masuk!”;
else
cout<<“User “<<user<<“ tidak dikenal, akses ditolak!”;
getch();
}
Dengan menggunakan fungsi strcmp, kedua string yang dibandingkan harus sama persis termasuk huruf besar kecilnya.
Apabila diinginkan untuk tidak membedakan huruf besar dan kecil maka digunakan fungsi strcmpi (string1, string2)
No comments:
Post a Comment