Jumat, 27 Mei 2016

STATEMENR CONTROL C++

Untuk Kali ini saya akan share mengenai Statement Control C++, Oke Langsung aja

A.   Statement IF

Seperti halnya Pascal, perintah IF dalam C++ juga digunakan untuk menyatakan pernyataan kondisional (bersyarat). Sintaks sederhana IF adalah

if (kondisi)
statement;

Statement  pada sintaks  di  atas  akan dilakukan jika  kondisinya  bernilai  TRUE (tidak sama dengan nol).


Apabila statement yang akan dilakukan lebih dari satu, maka sintaksnya menjadi

if (kondisi)
{
statement1;
statement2;
.
.
}

Contoh  sederhana  penggunaan  IF  adalah  untuk  menentukan  boleh  tidaknya seseorang melihat film bioskop. Seseorang diperbolehkan menonton jika usianya 17 tahun ke atas. Berikut ini program C++ nya:

#include <iostream.h>
#include <conio.h>
void main()
{
int usia;
clrscr();
cout << “Berapa usia Anda : “;
cin >> usia;
if (usia < 17)
cout << “Anda tidak boleh menonton bioskop”;
}

Statement  IF juga dapat ditambahkan ELSE sebagai  konsekuensi alternatif  jika kondisi tidak dipenuhi (FALSE). Sintaksnya:

if (kondisi)
{
statement1;
statement2;
.
.
}
else
{
statement1;
statement2;
}

Anda dapat modifikasi program C++ untuk menentukan boleh tidaknya seseorang menonton bioskop seperti di bawah ini:

#include <iostream.h>
#include <conio.h>
void main()
{
int usia;
clrscr();
cout << “Berapa usia Anda : “;
cin >> usia;
if (usia < 17)
cout << “Anda tidak boleh menonton bioskop”;
else cout << “Anda boleh menonton bioskop”;
}

Untuk  menyatakan  kondisi  (syarat)  yang  akan  dicek  pada  IF,  Anda  dapat menggunakan  operator  logika  dan  operator  relasional  seperti  yang  telah dijelaskan pada bab sebelumnya. Perhatikan contoh di bawah ini!

if ((a >= 2) && (b == 3))
{
.
.
}
Jangan Anda tuliskan
if (a >= 2) && (b == 3)
{
.
.
}

Atau

if ((a >= 2) && (b = 3))
{
.
.
}

Perintah b = 3 merupakan assignment bukan relasional.

Catatan penting:

C++ selalu memperlakukan nilai  tidak sama dengan nol  sebagai  TRUE dan nilai
nol  sama  dengan  FALSE.  Oleh  karena  itu,  dua  perintah  di  bawah ini  adalah
identik.
if (bil % 2 != 0)
cout << “Bilangan ganjil”;
if (bil % 2)
cout << “Bilangan ganjil”
Selain itu, IF juga dapat berbentuk seperti di bawah ini.
if (kondisi1)
statement1;
else if (kondisi2)
statement2;
else if (kondisi3)
statement3;
.
.
else statement;
B.   Statement SWITCH

Statement  SWITCH juga  berfungsi  sama dengan  IF.  Perintah  SWITCH sama dengan perintah CASE OF dalam PASCAL.
Sintaks:

switch (variabel)
{
case value1 : statement1;
              break;
case value2 : statement2;
              break;
.
.
default  : statement;    /* optional */
              break;
}
contoh penggunaan:
#include <iostream.h>
#include <conio.h>
void main()
{
  int bil;
  clrscr();
  cout << “Masukkan bilangan : “;
  cin >> bil
  switch (bil)
  {
  case 1 : cout << “Anda memasukkan bil. satu”;
           break;
  case 2 : cout << “Anda memasukkan bil. dua”;
           break;
  case 3 : cout << “Anda memasukkan bil. tiga”;
           break;
  default: cout << “Anda memasukkan bil selain 1, 2, dan 3”;
           break;
  }
}

Selanjutnya coba kalian hapus semua break program di atas dan kalian jalankan. Apa yang terjadi?? Keanehan akan muncul. Why ??

C.   Statement FOR

Statement FOR digunakan untuk menyatakan perulangan (seperti PASCAL).
Sintaksnya:

for (ungkapan1; ungkapan2; ungkapan3)
  {
    .
    .
  }

- Ungkapan1 merupakan statement awal (inisialisasi)
- Ungkapan2 merupakan kondisi/syarat perulangan dilakukan
- Ungkapan3 merupakan statement control untuk perulangan

Contoh:

for (a = 1; a <= 5; a++)
{
cout << “Hello world \n”;
}

NB: tipe data variabel a adalah integer
Perintah di atas akan menampilkan teks Hello World sebanyak 5 buah. Perhatikan
tanda a++. Apa maksudnya?

Selain berupa angka, pencacah perulangan juga dapat berupa karakter.

Contoh:

for (huruf = ‘Z’; huruf >= ‘A’; huruf--)
{
cout << “Huruf abjad= “ << huruf << “\n”;
}

Perintah di atas akan menampilkan teks Huruf abjad = ... mulai dari Z sampai
dengan A. Perhatikan perintah huruf--

for (angka = 1; angka <= 6; angka+=2)
{
cout << “Isi dari angka = “ << angka << endl;
}

Perintah di atas akan menampilkan angka 1, 3, 5. Kok bisa? Perhatikan perintah
angka+=2.

Di bawah ini adalah program untuk mencetak bilangan genap yang kurang dari n (n diperoleh dari input).

#include <iostream.h>
#include <conio.h>
void main()
{
int bil, n;
cout << “Masukkan n = “;
cin >> n;
for (bil = 0; bil < n; bil++)
{
if (bil % 2 == 0) cout << bil << “ ”;
}
}

D.   Statement WHILE

Statement  WHILE juga digunakan untuk menyatakan perulangan.  Penggunaannya Mirip pada PASCAL.

Sintaksnya:

while (kondisi)
{
.
.
}

contoh:
Dua perintah di bawah ini adalah identik.

for (a = 1; a <= 5; a++)
{
cout << “Hello world \n”;
}
dengan
a = 1;
while (a <= 5)
   {
cout << “Hello world \n”;
a++;
}

Penting!!!

Jika  Anda  menggunakan  WHILE,  pastikan  bahwa  suatu  saat  bagian  kondisi sampai  bernilai  FALSE.  Apabila  tidak,  proses  perulangan  akan  terus  berjalan selamanya.

Contoh program di  bawah  ini  digunakan  untuk  menjumlahkan  sejumlah  data angka. Angka yang akan dijumlahkan diinputkan satu-persatu. Proses pemasukan data angka akan berhenti  ketika dimasukkan angka –1. Setelah itu tampil  hasil penjumlahannya.
#include <iostream.h>
#include <conio.h>
void main()
{
int data, jumlah,cacah;
jumlah = 0;
data = 0;
cacah = 0;
while (data != -1)
{
cout << “Masukkan data angka : “;
cin >> data;
jumlah += data;
cacah++;
}
cout << “Jumlah data adalah : “ << jumlah” << endl;
cout << “Rata-rata : ” << jumlah/cacah;
}

Kondisi dalam WHILE juga dapat menggunakan operator logika. Misalnya

while ((kondisi1) && (kondisi2))
{
.
.
}

E.   Statement DO ... WHILE

Perintah DO ... WHILE hampir sama dengan WHILE sebelumnya. Sintaknya:

do
  {
  .
  .
  }
while (kondisi);

Perbedaan dengan WHILE sebelumnya yaitu bahwa pada DO WHILE statement perulangannya  dilakukan  terlebih  dahulu  baru  kemudian  di  cek  kondisinya. Sedangkan  WHILE kondisi  dicek  dulu  baru  kemudia  statement  perulangannya dijalankan.  Akibat  dari  hal  ini  adalah  dalam  DO WHILE minimal  terdapat  1x perulangan.  Sedangkan  WHILE dimungkinkan  perulangan  tidak  pernah  terjadi yaitu ketika kondisinya langsung bernilai FALSE.

Contoh:

a = 1;
do
   {
cout << “Hello world \n”;
a++;
   }
while(a==0)

Perintah di atas akan muncul satu buah Hello World. Bandingkan dengan yang
berikut ini:

a = 1;
while(a==0)
  {
cout << “Hello world \n”;
a++;
}

Perintah di atas sama sekali  tidak menampilkan Hello World, karena kondisinya

langsung FALSE.

Tidak ada komentar:

Posting Komentar