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.
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);
{
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;
}
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
Posting Komentar