Selasa, 12 November 2013

Percabangan

****     Macam-macam Percabangan     ****

            Percabangan pada bahasa pemrograman khususnya bahasa C++, terdapat 2 metode. 1. If- else 2. Switch-case Percabangan digunakan dalam program untuk menyatakan beberapa kondisi. Umumnya kondisi jika benar, dan jika salah.
  1.   If-else
           Pernyataan Percabangan If-Else digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada.  Statement if digunakan untuk melakukan proses percabangan di dalam program.
  • Contoh ekpresi :

if(kondisi)
{
statement 1;
}
else
{
statement 2;
}

Ket :
Kondisi adalah pernyataan relasi yang akan diuji kebenarannya. Kondisi bisa berbentuk pernyataan relasi tunggal maupun pernyataan relasi majemuk yang dihunbungkan dengan operator logika.


Statement adalah satu atau lebih perintah yang akan dikerjakan jika kondisi bernilai benar.


Kesimpulan:

Pernyataan if mempunyai pengertian, “Jika kondisi bernilai benar, maka statement 1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan statement 2″.

a. Notasi algoritmik statement if
  •  satu kondisi
          if (nilai_algoritma=='A')
{
         printf("selamat");
}
  • dua kondisi
int a=10;
int b=11;

if (a==10)
{
printf("nilai a=10\n");
}
if (b==11)
{
printf("nilai 11");
}
else
{
printf("baris else");
}

Ket:
Pada contoh coding tersebut, jika kedua kondisi yang dimasukkan  bernilai benar,maka statement if nya akan dijalankan. Dan jika salah satuya atau semua kondisi yang dimasukkan bernilai salah, maka statemen else nya akan dijalankan.
       
  • lebih dari dua kondisi
Untuk menentukan bilangan terbesar, bilangan terkecil, rata-rata.

{
int a,b,c,d,e,f,g,h,i,j;
    float rata_rata;
    printf("masukkan nilai A :");
    scanf("%d",&a);
    printf("masukkan nilai B :");
    scanf("%d",&b);
    printf("masukkan nilai C :");
    scanf("%d",&c);
    printf("masukkan nilai D :");
    scanf("%d",&d);
    printf("masukkan nilai E :");
    scanf("%d",&e);
    printf("masukkan nilai F :");
    scanf("%d",&f);
    printf("masukkan nilai G :");
    scanf("%d",&g);
    printf("masukkan nilai H :");
    scanf("%d",&h);
    printf("masukkan nilai I :");
    scanf("%d",&i);
    printf("masukkan nilai J :");
    scanf("%d",&j);
   

if((a>=b)&&(a>=c)&&(a>=d)&&(a>=e)&&(a>=f)&&(a>=g)&&(a>=h)&&(a>=i)&&(a>=j))
    {
        printf("Nilai terbesar adalah A\n",a);
    }
    //============================== (A)
   
    if((b>=a)&&(b>=c)&&(b>=d)&&(b>=e)&&(b>=f)&&(b>=g)&&(b>=h)&&(b>=i)&&(b>=j))
    {
        printf("Nilai terbesar adalah B\n",b);
    }
    //============================== (B)
   
    if((c>=b)&&(c>=a)&&(c>=d)&&(c>=e)&&(c>=f)&&(c>=g)&&(c>=h)&&(c>=i)&&(c>=j))
    {
        printf("Nilai terbesar adalah C\n",c);
    }
    //=============================== (C)
    if((d>=a)&&(d>=b)&&(d>=c)&&(d>=e)&&(d>=f)&&(d>=g)&&(d>=h)&&(d>=i)&&(d>=j))
    {
        printf("Nilai terbesar adalah D\n",d);
    }
    //=============================== (D)
    if((e>=a)&&(e>=b)&&(e>=c)&&(e>=d)&&(e>=f)&&(e>=g)&&(e>=h)&&(e>=i)&&(e>=j))
    {
        printf("Nilai terbesar adalah E\n",e);
    }
    //=============================== (E)
    if((f>=a)&&(f>=b)&&(f>=c)&&(f>=d)&&(f>=e)&&(f>=g)&&(f>=h)&&(f>=i)&&(f>=j))
    {
        printf("Nilai terbesar adalah F\n",f);
    }
    //=============================== (F)
if((g>=a)&&(g>=b)&&(g>=c)&&(g>=d)&&(g>=e)&&(g>=f)&&(g>=h)&&(g>=i)&&(g>=j))
    {
        printf("Nilai terbesar adalah G\n",g);
    }
    //=============================== (G)
if((h>=a)&&(h>=b)&&(h>=c)&&(h>=d)&&(h>=e)&&(h>=f)&&(g>=h)&&(g>=i)&&(g>=j))
    {
        printf("Nilai terbesar adalah H\n",h);
    }
    //=============================== (H)
if((i>=a)&&(i>=b)&&(i>=c)&&(i>=d)&&(i>=e)&&(i>=f)&&(i>=g)&&(i>=h)&&(i>=j))
    {
        printf("Nilai terbesar adalah I\n",i);
    }
    //=============================== (I)
if((j>=a)&&(j>=b)&&(j>=c)&&(j>=d)&&(j>=e)&&(j>=f)&&(j>=g)&&(j>=h)&&(j>=i))
    {
        printf("Nilai terbesar adalah J\n",j);
    }
    //=============================== (J)

//***************************************************************************
   
if((a<=b)&&(a<=c)&&(a<=d)&&(a<=e)&&(a<=f)&&(a<=g)&&(a<=h)&&(a<=i)&&(a<=j))
    {
        printf("Nilai terkecil adalah A\n",a);
    }
    //============================== (A)
   
    if((b<=a)&&(b<=c)&&(b<=d)&&(b<=e)&&(b<=f)&&(b<=g)&&(b<=h)&&(b<=i)&&(b<=j))
    {
        printf("Nilai terkecil adalah B\n",b);
    }
    //============================== (B)
   
    if((c<=b)&&(c<=a)&&(c<=d)&&(c<=e)&&(c<=f)&&(c<=g)&&(c<=h)&&(c<=i)&&(c<=j))
    {
        printf("Nilai terkecil adalah C\n",c);
    }
    //=============================== (C)
    if((d<=a)&&(d<=b)&&(d<=c)&&(d<=e)&&(d<=f)&&(d<=g)&&(d<=h)&&(d<=i)&&(d<=j))
    {
        printf("Nilai terkecil adalah D\n",d);
    }
    //=============================== (D)
    if((e<=a)&&(e<=b)&&(e<=c)&&(e<=d)&&(e<=f)&&(e<=g)&&(e<=h)&&(e<=i)&&(e<=j))
    {
        printf("NilaiNilai terkecil adalah E\n",e);
    }
    //=============================== (E)
    if((f<=a)&&(f<=b)&&(f<=c)&&(f<=d)&&(f<=e)&&(f<=g)&&(f<=h)&&(f<=i)&&(f<=j))
    {
        printf("Nilai terkecil adalah F\n",f);
    }
    //=============================== (F)
if((g<=a)&&(g<=b)&&(g<=c)&&(g<=d)&&(g<=e)&&(g<=f)&&(g<=h)&&(g<=i)&&(g<=j))
    {
        printf("Nilai terkecil adalah G\n",g);
    }
    //=============================== (G)
if((h<=a)&&(h<=b)&&(h<=c)&&(h<=d)&&(h<=e)&&(h<=f)&&(g<=h)&&(g<=i)&&(g<=j))
    {
        printf("Nilai H=%d, lebih kecil dari A,B,D,E,F,G,H,I, dan J\n",h);
    }
    //=============================== (H)
if((i<=a)&&(i<=b)&&(i<=c)&&(i<=d)&&(i<=e)&&(i<=f)&&(i<=g)&&(i<=h)&&(i<=j))
    {
        printf("Nilai terkecil adalah I\n",i);
    }
    //=============================== (I)
if((j<=a)&&(j<=b)&&(j<=c)&&(j<=d)&&(j<=e)&&(j<=f)&&(j<=g)&&(j<=h)&&(j<=i))
    {
        printf("Nilai terkecil adalah J\n",j);
    }
float x;
x=(a+b+c+d+e+f+g+h+i+j)/10;
printf("rata_rata = %f\n",x);

 Maka outputnya :



Ket:
Dari coding tersebut, pada outputnya tampil seperti di atas. Sebenarnya waktu pertama kali kita compile, ada perintah masukkan angka, nah terserah kita mau masukkan berapa. Maka akhirnya akan menampilkan nilai terbesar,terkecil, dan rata-ratanya, karena telah dibuat kondisi pada programnya.

       2.    Switch-case
              Bentuk dari switch - case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian.
  •  contoh ekpresi
switch(ekspresi)  
{ case 1: Perintah ;  
break;  
case 2: Perintah ; 
 break;  
case 3: Perintah ;  
break;  
case 4: Perintah ;  
break;  
default: Perintah ;

a. Notasi algoritmik switch-case 

int bulan;
printf("Masukkan bulan : ");
scanf("%d", &bulan);

switch (bulan)
{
case 1:
printf("Januari");
break;
case 2:
printf("Februari");
break;
case 3:
printf("Maret");
break;
case 4:
printf("April");
break;
case 5:
printf("Mei");
break;
case 6:
printf("Juni");
break;
case 7:
printf("Juli");
break;
case 8:
printf("Agustu");
case 9:
printf("September");
break;
case 10:
break;
printf("Oktober");
break;
case 11:
printf("November");
break;
case 12:
printf("Desember");
break;

default :
printf("Bukan bulan");
break;

}

Maka outputnya:

Ket:
Pada saat kita compile, akan muncul perintah masukkan bulan. Nah, apabila kita masukkan angka 1 maka akan muncul Januari, karena kita sudah membuat kondisi case 1 adalah Januari.
        

0 komentar:

Posting Komentar