PENCABANGAN

Percabangan

A.    Definisi Percabangan
Percabangan adalah cara yang digunakan dalam program untuk mengambil keputusan ke satu kemungkinan True atau False dari beberapa kondisi.

Didalam pemrograman kita harus dapat menentukan aksi apa yang harus dikerjakan oleh pemroses (processor) ketika sebuah kondisi terpenuhi, dengan menggunakan operasi logik
Ø  Contoh
Int a=10;
a < 5

Percabangan yang digunakan pada bahasa pemrograman khususnya bahasa C++, terdapat 2 metode. 1. If- else 2. Switch-case.

B.     Macam-macam Percabangan

1.       If-else
Pernyataan Percabangan If-Else digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara banyak pernyataan yang ada.  Statement if digunakan untuk melakukan proses percabangan di dalam program.

Statement If

Statement if digunakan untuk melakukan proses percabangan didalam program.

Contoh expresi

If a = 10 then    
{

Aksi yang dilakukan

}

Notasi Algoritmik Statement If

if kondisi then

 aksi

Endif






Contoh Di Bahasa Pemrograman
Contoh di bahasa pemrograman C++
if nama_matakuliah==“algoritma”
{
       printf(“selamat datang di mata kuliah algoritma”);
}
Percabangan If Dengan 2 Kondisi
If kondisi 1 then
{
   aksi 1;
}
If kondisi 2 then
{
    aksi 2;
}
Else
{
    aksi yang dilakukan ketika nilai if diatas tidak menghasilkan nilai true;
}
Contoh (notasi algortimik)
PROGRAM MENCARI PROGRAM
{ MENCARI NILAI DARI SEBUAH VARIABEL }
DEKLARASI
X=INT;
ALGORITMA
Read (x)         
If (x>0) then
            write (“bilangan adalah bilangan bulat positif”);
End if
If (x<0)
            write (“bilangan adalah bilangan bulat negatif”);
End if
Else
            write (“maaf nilai variabel yang anda masukkan adalah salah”);
End if
Lebih dari 3 Kondisi
if kondisi 1 then
Aksi 1
end if
else
            if kondisi 2 then
                        aksi 2
                        end if
ef kondisi 3 then
                        aksi 3
end if
else
              kondisi default
end if

Contoh
Ø  Menentukan bilangan terbesar
Int a,b,c;
        if (a >= b ) and (a >=b) then
write (“bilangan terbesar adalah a”)
end if
if (b >= a) and (b>= c) then
write (“bilangan terbesar adalah b”)
end if
if (c>=a) and (c>=b) then
write  (“bilangan terbesar adalah c”)
end if
else
        write (“bilangan yang anda masukkan adalah salah”)
end if
2.      Switch-case
              Bentuk dari switch - case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian.

Percabangan Case

·         Struktur statement if dan else menjadi sangat panjang ketika, banyak kondisi yang harus dievaluasi. Contoh
Contoh konversi angka ke teks
  read angka
  if (angka=1 ) then
  write (‘satu’)
  end if
  else
  If (angka=2) then
  write (‘dua’)
  end if
  If (angka=3) then
  write (‘tiga’)
  end if
  If (angka=4)then
  write (‘empat’)
  end if
  else
  write (‘anda memasukkan bukan angka’);
  end if
Percabangan case (notasi algoritmik)
  read angka
  case angka
  1 : write(‘satu’)
  2 : write(‘dua’)
  3 : write(‘tiga’)
  4 : write(‘empat)
  Otherwise : write (“angka yang anda masukkan adalah salah’)
  End case
If vs case
  Menggunakan if jika kondisi yang akan dievaluasi jumlah nya sedikit
  Menggunakan case jika kondisi yang akan dievaluasi jumlahnya lebih banyak
Contoh program
1.      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:
2.      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("Agustus");
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:
 

Komentar

Postingan populer dari blog ini

PENGERTIAN ALGORITMAPEMOGRAMAN DAN STRUKTUR DASAR ALGORITMA PEMROGRAMAN

Cara Membuat Vlan 5 Segment Dengan Cisco Packet Tracer

Subscriber Internet Telepon Dan Prosedur Pengamatan Kerja