Sabtu, 27 April 2013

Percabangan dan Perulangan Pada C++

Edit Posted by with 2 comments

Percabangan adalah pengatur aliran progrmam, berbentuk rangkaian perintah yang harus ditulis untuk memenuhi beberapa keadaan, yaitu:
a.       Mengulang secara rutin karena tidak terpenuhinya suatu kondisi.
b.      Melanjutkan suatu pernyataan bila kondisi terpenuhi.
c.       Memilih sebuah pilihan dari beberapa pilihan alternatif bila sebuah kondisi terpenuhi.
Singkatnya,pernyataan  percabangan digunakan untuk memecahkan suatu persoalan untuk mengambil keputusan diantar sekian pernyataan yang ada.

1.      Pernyataan IF
Pernyataan if mempunyai pengertian,”jika kondisi bernilai benar, maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan”.
Bentuk Umum Pernyataan if:
if (kondisi)
{
pernyataan
...................
}

Contoh:
Tentukan besarnya potongan dari pembelian barang yang akan diberikan seorang pembeli, dengan kriteria:
a.       Tidak ada potongan jika total pembelian kurang dari Rp.50.000;
b.      Jika total pembelian lebih dari atau sama dengan Rp.50.000; maka akan diberi potongan 20% dari total pembelian.
Listing Programnya:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>

void main()
{
double tot_beli, potongan=0, jum_bayar=0;

cout<<”total pembelian rp. “;
cin>>tot_beli;

if (tot_beli >= 50000)
potongan = 0.2 * tot_beli;
            cout<<”besarnya potongan rp. “<<potongan<<endl;
            jum_bayar = tot_beli-potongan;
cout<<”jumlah yang harus dibayarkan rp. “;
cout<<jum_bayar;
getch ();
}

2.     
Pernyataan IF-ELSE
Pernyataan if-else memiliki pengertian,”jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2.”
Bentuk Umum Pernyataan If-Else
If (kondisi)
            Perintah-1;
Else
            Perintah-2;

Contoh:
Tentukan besarnya potongan dari pembelian barang yang akan diberikan seorang pembeli, dengan kriteria:
c.       Tidak ada potongan jika total pembelian kurang dari Rp.50.000,maka potongan yang diterima sebesar 5% dari total pembelian;
d.      Jika total pembelian lebih dari atau sama dengan Rp.50.000; maka akan diberi potongan 20% dari total pembelian.
Listing Programnya:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>

void main()
{
double tot_beli, potongan=0, jum_bayar=0;

cout<<”total pembelian Rp. “;
cin>>tot_beli;

if (tot_beli >= 50000)
potongan = 0.2 * tot_beli;
            else
                        potongan = 0.05 * tot_beli;
            cout<<”besarnya potongan Rp. “<<potongan<<endl;
            jum_bayar = tot_beli-potongan;
cout<<”jumlah yang harus dibayarkan Rp. “;
cout<<jum_bayar;
getch ();
}
3.      Pernyataan Else-if
Else-if merupakan pernyataan if yang berada dalam pernyataan if yang lain.
Bentuk Umum:
if (syarat)
{
....perintah;
....perintah;
}
else if (syarat)
{
....perintah;
....perintah;
}
else
{
....perintah;
....perintah;
}
4.      Pernyataan Switch-Case
Bentuk switch-case merupakan pernyataan yang sering dirancang khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif. Pernyataan switch-case ini memiliki kegunaan sama seperti if-else bertingkat, tetapi untuk memeriksa data yang bertipe string atau integer.
Bentuk Umum Pernyataan Switch-Case
switch (ekspresi integer atau karakter)
{
case konstanta-1;
            ....perintah;
            ....perintah;
case konstanta-2;
            ....perintah;
            ....perintah;
            break;
....
....
default :
            ....perintah;
            ....perintah;
}
Setiap cabang akan dijalankan jika syarat nilai konstanta terpenuhi dan default akan dijalankan jika semua cabang di atasnya tidak terpenuhi.
Pernyataan break menunjukan siap keluar dari switch. Pernyataan ini tidak ada, maka program akan di teruskan pada cabang-cabang yang lainnya.

Contoh Listing Program:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
viod main()
{
            char Kode;

cout<<"Masukan Kode ";
cin>>Kode;

switch(kode);
{
case 'A' :
cout<<"Nilai Istimewa";
break;
case 'B' :
cout<<"Nilai Baik";
break;
default:
cout<<"Anda Salah Memasukan Kode";
break;
}
getch ();
}
Perulangan
1.      Pernyataan For
Perulangan yang pertama adalah for. Bentuk umum pernyataan for adalah sebagai berikut:
for (inisilisasi; syarat pengulangan; pengubahan nilai pencacah)

Bila pernyataan di dalam for lebih dari satu maka pernyaan-pernyataan tersebut harus diletakan di dalam tanda kurung.
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah)
{
Pernyataan / perintah;
Pernyataan / perintah;
Pernyataan / perintah;
}

Kegunaan dari masing-masing argumen for adalah:
Ø  Inisialisasi: bagian untuk memberikan nilai awal untuk memberikan variabel-variabel tertentu.
Ø  Syarat pengulangan: memeganng kontrol terhadap pengulangan, karena bagian ini yang akan menentukan suatu perulangan diteruskan atau dihentikan.
Ø  Pengubahan nilai pencacah: mengatur kenaikan atau pengurangan nilai pencacah.


Contoh:
/* ------------------------------------ */
/* Program For-Bilangan Naik */
/* ------------------------------------ */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int a;
for(a = 1; a <= 10; a+=2)
cout<<a
getch();
}
2.      Pernyataan While
Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan for. Bentuk umum perulangan while dikendalikan oleh syarat tertentu, yaitu perulangan akan terus dilakukan selama syarat tersebut belum terpenuhi.
Bentuk umum pernyataan while:
While (syarat)
                        Pernyataan/perintah;
            Contoh Listing:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int bil=1;
while(bil<=10)
{
cout<<bil<<” “;
++bil;
}
getch();
}
3.      Pernyataan Do-While
Pernyataan perulangan do-while merupakan bentuk perulangan yang melaksanakan perulangan terlebih dahulu dan pengujian perulangan dilakukan belakangan.
Bentuk umum perulangan do-while adalah;
do
pernyataan/perintah ;
while (syarat);


            contoh Listing:
            #include<iostream.h>
void main()
{
int bil=2;
do
{

cout<<bil<<" ";
bil+=2;
}
while(bil<=10);
getch();
}



2 komentar: