Thursday, December 12, 2013

percabangan

Percabangan
Percabangan adalah Pengkontrol alur program yang berdasarkan kondisi boolean (true & False) yang dijadikan patokan.
Terdapat dua jenis percabangan yaitu: 
1.      Percabangan if 
2.      Percabangan Case
Didalam pemrograman kita harus dapat menentukan aksi apa yang harus dikerjakan oleh pemroses (processor) ketika sebuah kondisi terpenuhi.
  
1. Percabangan if
Percabangan if digunakan untuk melakukan proses percabangan didalam program.
Contoh expresi:
If a = 10 then
{
Statment yang akan di jalankan.
}

  • Ekspresi dengan 2 kondisi:

                                    If kondisi 1

{

      aksi 1;

}

If kondisi 2

{

    aksi 2;

}

Else

{

    aksi yang dilakukan ketika nilai if diatas tidak menghasilkan nilai true;

}
//jika kondisi 1 terpenuhi maka aksi 1 akan berjalan dan jika kondisi 2 yang terpenuhi, maka aksi 2 yang akan dijalankan, namun jika kedua kondisi tidak terpenuhi maka aksi else yang akan di jalankan.

  • Ekspresi lebih dari 3 kondisi

    if kondisi 1 then

Aksi 1

end if

else

            if kondisi 2 then

aksi 2

end if

if kondisi 3 then

aksi 3

end if

else


              kondisi default

end if
//jika kondisi 1 terpenuhi maka aksi 1 akan berjalan jika kondisi 2 yang terpenuhi, maka aksi 2 yang akan dijalankan dan jika kondisi 3 yang terpenuhi maka aksi ke 3 yang akan dijalankan, namun jika kedua kondisi tidak terpenuhi maka aksi else yang akan di jalankan.
  •  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


Contoh program Menentukan bilangan terbesar:

# include <stdio.h>

# include <conio.h>


int main()

{

            printf("==Welcome==\n");

 int a, b, c,d,e,f,g,h,i,j, besar, kecil;

 printf("Masukan bil 1 : ");scanf("%d",&a);

 printf("Masukan bil 2 : ");scanf("%d",&b);

 printf("Masukan bil 3 : ");scanf("%d",&c);

 printf("Masukan bil 4 : ");scanf("%d",&d);

 printf("Masukan bil 5 : ");scanf("%d",&e);

 printf("Masukan bil 6 : ");scanf("%d",&f);

 printf("Masukan bil 7 : ");scanf("%d",&g);

 printf("Masukan bil 8 : ");scanf("%d",&h);

 printf("Masukan bil 9 : ");scanf("%d",&i);

 printf("Masukan bil 10 : ");scanf("%d",&j);


 if (a>b) { besar=a; kecil=b;}

 if (a>c) { besar=a; kecil=c;}

 if (a>d) { besar=a; kecil=d;}

 if (a>e) { besar=a; kecil=e;}

 if (a>f) { besar=a; kecil=f;}

 if (a>g) { besar=a; kecil=g;}

 if (a>h) { besar=a; kecil=h;}

 if (a>i) { besar=a; kecil=i;}

 if (a>j) { besar=a; kecil=j;}


 else

  {besar=b; kecil=a;}

  {besar=c; kecil=a;}

  {besar=d; kecil=a;}

  {besar=e; kecil=a;}

  {besar=b; kecil=a;}

  {besar=g; kecil=a;}

  {besar=h; kecil=a;}

  {besar=i; kecil=a;}

  {besar=j; kecil=a;}

 

 if (c>besar) besar=c;

 if (c<kecil) kecil=c;

 if (d>besar) besar=d;

 if (d<kecil) kecil=d;

 if (e>besar) besar=e;

 if (e<kecil) kecil=e;

 if (f>besar) besar=f;

 if (f<kecil) kecil=f;

 if (g>besar) besar=g;

 if (g<kecil) kecil=g;

 if (h>besar) besar=h;

 if (h<kecil) kecil=h;

 if (i>besar) besar=i;

 if (i<kecil) kecil=i;

 if (j>besar) besar=j;

 if (j<kecil) kecil=j;


 float rata=(a+b+c+d+e+f+g+h+i+j)/10;

 printf("terbesar adalah %d\n",besar);

 printf("terkecil adalah %d\n",kecil);

 printf("rata-rata adalah %.2f\n\n",rata);

}
Output nya:

==welcome==

Masukkan bil 1 : 12

Masukkan bil 2 : 2

Masukkan bil 3 : 32

Masukkan bil 4 : 21

Masukkan bil 5 : 12

Masukkan bil 6 : 43

Masukkan bil 7 : 23

Masukkan bil 8 : 15  

Masukkan bil 9 : 16

Masukkan bil 10 : 122

terbesar adalah 122

terkecil adalah 12

rata-rata adalah 29.00


Terminated with return code 0

Press any key to continue. . . . 
2.      Percabangan Case
Percabangan statement if dan else menjadi sangat panjang ketika, banyak kondisi yang harus dievaluasi.
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
a.          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


Contoh program mencari Nama bulan:
#include<stdio.h>

int main()

{

     int bulan;

     printf("masukan nama 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");

                 break;

     case 9:

                 printf ("september");

                 break;

     case 10:

                 printf ("oktober");

                 break;

     case 11:

                 printf ("novembar");

                 break;

     case 12:

                 printf ("desember");

                 break;

     default:

                 printf("Tidak terdeteksi\n");

                 printf ("yang anda masukkan bukan nama bulan");

                 break;

     }

     return 0;

}

No comments:

Post a Comment