Jumat, 17 Maret 2017

Mengenal Struktur Seleksi pada C++



Seleksi kondisi adalah proses penentuan langkah berikutnya berdasarkan proses yang terjadi sebelumnya. Seleksi kondisi ini sangat penting dalam pemrograman sebab dengan adanya seleksi kondisi, program dapat menentukan proses apa yang harus dilakukan selanjutnya berdasarkan keadaan sebelumnya. Sehingga nampak seolah-olah program dapat berpikir dan mengambil keputusan. Disinilah letak kekurangan komputer yaitu tidak mampu berpikir sendiri, semua hal yang dilakukan adalah berdasarkan perintah.


Macam Operasi Seleksi pada C++

A. If

1. if

Kondisi pada pernyataan if harus ditulis di dalam tanda kurung. Dengan kata lain tanda kurung harus disertakan untuk melingkupi kondisi pada pernyataan if. Pada bahasa C dan C++ jika di dalam { } hanya terdapat satu pernyataan saja, tanda tersebut dapat dibuang atau tidak dipakai.
Jika kondisi bernilai benar, maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan.

Bentuk Umum:
if (kondisi)
{
     pernyataan;
     ………
}


Contoh :
Buatlah program untuk menampilkan apakah nilai x dan y yang dimasukkan merupakan bilangan positif.

Program :

#include <iostream>
#include <conio.h>
#include <stdio.h>

using namespace std;
main( )
{
   float x,y;
  
   cout<<"Masukkan Nilai Positif atau Negatif "<<endl;
   cout<<" Nilai X : ";cin>>x;
   cout<<" Nilai Y : ";cin>>y;
  
   if ((x >= 0 ) && (y>=0))
   cout<<"X dan Y Bernilai POSITIF "<<endl;
return 0;
}














2.  If Else
Pernyataan if mempunyai pengertian, “Jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2”.

Bentuk Umum :
if (kondisi)
{
  perintah-1;
  …..
}
else
{
  perintah-2;
  …..
}


Contoh :
Menentukan besarnya diskon dan bonus dari jumlah beli, dengan kriteria :
-   jika jumlah beli > 15 maka diskon 5% dan bonusnya : payung
-   selain itu tidak dapat diskon dan bonus

Program :
#include <iostream>
#include <conio.h>
#include <string.h>

using namespace std;
main( )
{
   float jumbel,hrg;
   char bonus[15];
   float diskon;

   cout<<" Harga Barang : " ; cin>> hrg;
   cout << " Jumlah belinya : "; cin>> jumbel;
  
   if(jumbel>=15)
   {
      diskon = 0.15 * hrg ; strcpy(bonus, "Buku Belajar C++");
   }
   else
   {
      diskon =0 ; strcpy(bonus, "Tidak Dapat");
   }
  
   cout<<"\n----------------------------"<<endl;
   cout<<" Diskonnya : "<<diskon<<endl;
   cout<<" Bonusnya : "<<bonus<<endl;
return 0;
}




















3.  Nested If
Jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2. Dan  Nested if merupakan pernyataan if berada di dalam pernyataan if yang lainnya. 

Bentuk Umum:
if(syarat)
{
        if(syarat)
              … perintah;
        else
              … perintah;
}
else
{
        if(syarat)
              … perintah;
        else
              … perintah;
}


Keterangan :

"Jika syarat1 bernilai benar, dan jika syarat1-1 bernilai benar, maka akan mengerjakan perintah 1.1" Apabila syarat 1-1 bernilai salah, maka akan mengerjakan perintah 1.2".
"Jika syarat1 bernilai salah, dan jika syarat2-1 bernilai benar, maka akan mengerjakan perintah 2.1" Apabila syarat 2-1 bernilai salah, maka akan mengerjakan perintah 2.2".

Contoh :
Suatu perusahaan menjual pakaian dengan ketentuan sebagai berikut:
Jika kode baju=1 maka Merk Baju = H&R, dengan ukuran baju=S,maka harganya 45000, Jika ukuran baju=M, maka harganya 60000, selain itu harganya = 0.
Jika kode baju=2 maka Merk Baju = Adidas, dengan ukuran baju=S, maka harganya 65000, Jika ukuran Baju=M, maka harganya 75000, selain itu harganya = 0.
Selain kode baju diatas, maka salah kode

Program :
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <string.h>

using namespace std;
main( )
{
     int kode;
     char ukuran,merk[30];
     long int harga;

   cout<<"Kode Baju : ";cin>>kode;
   cout<<"Ukuran : ";cin>>ukuran;
  
   if (kode==1)
   {
        strcpy(merk,"H&R");
        if (ukuran=='S'|| ukuran =='s')
           harga=45000;
        else if (ukuran=='M' || ukuran =='m')
           harga=60000;
        else
           harga=0;
   }
   else if (kode==2)
   {
        strcpy(merk,"Adidas");
        if (ukuran=='S' || ukuran=='s')
           harga=65000;
        else if (ukuran=='M' || ukuran=='m')
           harga=75000;
        else
           harga=0;
   }
   else
        cout<<"Kode Baju Salah"<<endl;
        harga=0;

     cout<<"----------------------"<<endl;
     cout<<"Merk Baju  :"<<endl;
     cout<<"Harga Baju :"<<harga<<endl;
    
return 0;
}























4.  If Else Majemuk
Jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2. Dan Bentuk dari if-else bertingkat sebenarnya serupa dengan nested if, keuntungan penggunaan if-else bertingkat dibanding dengan nested if adalah penggunaan bentuk penulisan yang lebih sederhana.

Bentuk Umum:
if (syarat)
{
        … perintah;
        … perintah;
}
else if (syarat)
{
        … perintah;
        … perintah;
}
else
{
        … perintah;
        … perintah;
}


Contoh :
Suatu perusahaan memberikan komisi kepada para selesman dengan ketentuan sebagai berikut:

·   Bila salesman dapat menjual barang hingga Rp. 200.000 ,- , akan diberikan uang jasa sebesar Rp. 10.000 ditambah dengan uang komisi Rp. 10% dari pendapatan yang diperoleh hari itu. 
·   Bila salesman dapat menjual barang diatas Rp. 200.000 ,- , akan diberikan uang jasa sebesar Rp. 20.000 ditambah dengan uang komisi Rp. 15% dari pendapatan yang diperoleh hari itu. 
·   Bila salesman dapat menjual barang diatas Rp. 500.000 ,- , akan diberikan uang jasa sebesar Rp. 30.000 ditambah dengan uang komisi Rp. 20% dari pendapatan yang diperoleh hari itu.

Program :
#include <iostream>
#include <conio.h>

using namespace std;
main( )
{
   float pendapatan, jasa=0, komisi=0, total=0;

   cout<<"Pendapatan Hari ini Rp. "; cin>>pendapatan;
  
   if (pendapatan >= 0 && pendapatan <= 200000)
  {
       jasa=10000;
       komisi=0.1*pendapatan;
   }
   else if(pendapatan<=500000)
   {
       jasa=20000;
       komisi=0.15*pendapatan;
   }
   else
   {
        jasa=30000;
        komisi=0.2*pendapatan;
   }
   // menghitung total
   total = komisi+jasa;
   cout<<"Uang Jasa Rp. "<<jasa<<endl;
   cout<<"Uang Komisi Rp. "<<komisi<<endl;
   cout<<"============================="<<endl;
   cout<<"Hasil Total Rp. "<<total<<endl;
return 0;
}























B.    Switch Case
Bentuk dari switch - case adalah pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian. Pernyataan switch - case ini memiliki kegunaan sama seperti if – else bertingkat, tetapi penggunaannya untuk memeriksa data yang bertipe karakter atau integer.

Bentuk Umum :
switch (ekspresi integer atau karakter )
{
   case konstanta-1 :
         … perintah;
         … perintah;
   break;
   case konstanta-2 :
         … perintah;
         … perintah;
   break;
   default :
         … perintah;
         … perintah;
}

Contoh :
Buatlah program untuk menampilkan jurusan dengan memberikan kode pada tiap jurusan.

Program :
#include <iostream>

using namespace std;
main( )
{
   int kode;

   cout<<"Masukkan Kode Jurusan [11/12/13] : "; cin>>kode;
   switch(kode)
   {
        case 11 :
           cout<<"Komputerisasi Akuntansi";
        break;
        case 12 :
           cout<<"Manajemen Informatika";
        break;
        case 13 :
           cout<<"Tehnik Informatika";
        break;
        default:
           cout<<"Anda Salah Memasukan kode";
        break;
   }
return 0;
}





















Daftar Pustaka :

0 komentar:

Posting Komentar