Sabtu, 24 Desember 2016

MATERI Algoritma : Seleksi Kondisi dalam C++

Tags



SELEKSI KONDISI DALAM C++


1.  Bentuk if Tunggal
Sintak dari bentuk if tunggal adalah sebagai berikut:
if (kondisi) pernyataan;
Bentuk ini menunjukkan bahwa jika kondisi tersebut dipenuhi, maka pernyataan dalam if akan dijalankan, sebaliknya jika kondisi tersebut tidak dipenuhi maka pernyataan dalam if juga tidak akan dijalankan. Berikut ini contoh penggunaan bentuk if tunggal:
Contoh code :

#include <iostream.h>
#include <stdlib.h>
int main()
{
      int jmlAnak;
      float gajiKotor, tunjangan,persenTunj=0.2;
      cout<<"Gaji kotor : ";
      cin >>gajiKotor;
      cout<<"Jumlah Anak :";
      cin >>jmlAnak;
      if(jmlAnak>2) persenTunj=0.3;
      tunjangan = persenTunj*gajiKotor;
      cout<<"Besar Tunjangan : "<<tunjangan;
      system("PAUSE");
      return 0;
}

2.  Bentuk if – else
Sintak dari bentuk if – else adalah sebagai berikut:
if (kondisi) pernyataan1;

else pernyataan2;

Jika kondisi di dalam if dipenuhi, maka pernyataan1 dijalankan, sebaliknya jika kondisi if tidak dipenuhi maka pernyataan2 baru dijalankan.
Contoh code :
/*Program seleksi hasil pembagian*/
#include <iostream.h>
#include <stdlib.h>
int main()
{
      float bil1,bil2;
      cout<<"Bilangan pertama : ";
      cin >>bil1;
      cout<<"Bilangan kedua : ";
      cin >>bil2;
      if(bil2==0)
        cout<<bil1<<" dibagi 0 hasilnya adalah tak hingga" <<endl;
      else
        cout<<bil1<<" dibagi "<<bil2<<" hasilnya adalah "<<bil1/bil2<<endl;
      system("PAUSE");
      return 0;
}

3.  Bentuk if – else if - . . . – else
Penyeleksian akan dilakukan mulai dari kondisi yang pertama (kondisi1). Jika kondisi ini dipenuhi maka pernyataan yang mengikutinya akan dijalankan (pernyataan_1) dan seleksi kondisi dihentikan (kondisi-kondisi yang lain tidak akan di periksa). Namun jika kondisi1 tidak dipenuhi maka seleksi kondisi langsung dilanjutkan ke kondisi2. Jika kondisi2 dipenuhi maka pernyataan_2 dijalankan, namun jika tidak maka seleksi dilanjutkan ke kondisi3. Begitu seterusnya. Jika semua kondisi tidak ada yang bernilai benar maka pernyataan yang ada di else  yang akan dijalankan. Bentuk elsesendiri bersifat optional, dapat tidak digunakan
Bentuk ini disebut juga sebagai bentuk bertingkat. Sintak dari bentuk ini adalah sebagai berikut:
if(kondisi1) pernyataan_1;

else if(kondisi2) pernyataan_2;

else if(kondisi3) pernyataan_3;

. . .

else pernyataan_n;

Contoh code :
/*Program Seleksi Nilai*/
#include <iostream.h>
#include <stdlib.h>
int main()
{
      int nilai;
      cout<<"Masukkan nilai ujian : ";
      cin >>nilai;
      if(nilai<=40)
        cout<<"Anda gagal"<<endl;
      else if(nilai<=60)
        cout<<"Anda mengulang"<<endl;
      else
        cout<<"Anda lulus"<<endl;
      system("PAUSE");
      return 0;
}

4.  Bentuk if Bersarang
Kondisi yang akan diseleksi pertama kali adalah kondisi yang paling luar yaitu kondisi_1. Jika kondisi_1 tidak dipenuhi, maka pernyataan setelah else yang terluar (pasangan dari if yang bersangkutan) yang dijalankan. Jika else tidak ditulis maka seleksi kondisi akan dihentikan. Jika kondisi ini dipenuhi maka kondisi berikutnya yang lebih dalam (kondisi_2) yang akan diseleksi. Jika kondisi_2 tidak dipenuhi maka pernyataan setelah else pasangan dari if(kondisi_2) akan dijalankan. Namun jika kondisi_2 dipenuhi maka seleksi kondisi akan dilanjutkan ke kondisi berikutnya yang lebih dalam. Begitu seterusnya sampai dengan kondisi ke_n.
Bentuk ini merupakan bentuk pernyataan if di dalam pernyataan if yang lain. Sintaknya adalah sebagai berikut:
if(kondisi_1)
   if(kondisi_2)
      . . .
      if(kondisi_n)
         pernyataan;
      else
         pernyataan;
      . . .
   else
      pernyataan;
else
   pernyataan;

Contoh code :
/*Program Seleksi Penerimaan Karyawan*/
#include <iostream.h>
#include <stdlib.h>
int main()
{
      char jenkel;
      float ip;
      cout<<"Jenis Kelamin (L/P): ";
      cin >>jenkel;
      cout<<"Indeks Prestasi Kumulatif (IPK) : ";
      cin >>ip;   
      if((jenkel=='l')||(jenkel=='L'))
      {
        if(ip<2.75)
          cout<<"Maaf anda tidak diterima!!";
        else
          cout<<"Selamat!!anda masuk seleksi berikutnya!";
        cout<<endl;
      }
      else if((jenkel=='p')||(jenkel=='P'))
      {
         if(ip<3.00)
          cout<<"Maaf anda tidak diterima!!";
        else
          cout<<"Selamat!!anda masuk seleksi berikutnya!";
      }
      else
         cout<<"Maaf kami belum bisa memproses data anda!!";
      cout<<endl;
      system("PAUSE");
      return 0;
}


EmoticonEmoticon