Jelaskan apakah yang dimaksud dengan percabangan pada pemrograman dasar?

Show

Percabangan (branching) adalah salah satu bentuk kontrol program. Percabangan berguna untuk mengatur alur jalannya program sesuai dengan suatu kondisi yang terpenuhi. Dalam Python, terdapat tiga keywords untuk melakukan percabangan, yaitu if, elif, dan else.

IF

If merupakan penanda awal suatu percabangan. Suatu program akan menjalankan alur tertentu jika memenuhi kondisi yang ditentukan pada blok if.

ELIF

Elif atau kependekan dari else if adalah suatu percabangan setelah if. Sama seperti if, elif akan menjalankan kode program di bawahnya jika kondisi dalam blok if atau elif sebelumnya tidak terpenuhi (bernilai false) dan kondisi pada blok elif tersebut terpenuhi.

ELSE

Else merupakan kondisi penutup dari sebuah percabangan. Dapat dikatakan bahwa else adalah solusi percabangan terakhir, sehingga else tidak memerlukan syarat seperti halnya if dan elif.

Perulangan (looping) adalah suatu bentuk kontrol program yang memungkinkan kita mengulang eksekusi program selama kondisi masih terpenuhi. Dalam Python, terdapat dua macam perulangan, yaitu for dan while.

FOR

For merupakan bentuk iterasi yang akan menjalankan suatu kode blok program selama elemen dari koleksi yang akan diiterasi belum habis. Koleksi elemen tersebut dapat berupa sebuah range integer, ataupun berupa sebuah list yang akan diiterasi satu per satu elemen di dalamnya.

Program di atas akan mengeluarkan output sebagai berikut:

WHILE

While adalah bentuk pengulangan yang akan terus berjalan selama kondisi terpenuhi (syarat bernilai true). Dalam menggunakan while loop, kita harus memastikan bahwa perulangan akan berhenti pada suati nilai tertentu dengan membuat kondisinya menjadi false.

Program di atas akan mengeluarkan output sebagai berikut:

Continue adalah sebuah perintah di dalam loop yang akan membuat kontrol langsung kembali ke awal blok kode loop dan langsung mengevaluasi iterasi selanjutnya (seluruh perintah di bawah itu akan dilompati)

Program di atas akan mengeluarkan output sebagai berikut:

Break

Break adalah sebuah perintah di dalam loop yang akan membuat kontrol langsung keluar dari loop. Seluruh perintah di bawah perintah break dan seluruh iterasi setelahnya akan dilompati (tidak akan dieksekusi).

Program di atas akan mengeluarkan output sebagai berikut:

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:

Jelaskan apakah yang dimaksud dengan percabangan pada pemrograman dasar?

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:

 

Jelaskan apakah yang dimaksud dengan percabangan pada pemrograman dasar?


Page 2