Home » , , , , , » Struktur control pada c++

Struktur control pada c++

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)

0 komentar:

Post a Comment

Ads Inside Post