MODUL II
STATEMENT CONTROL
A. TUJUAN
a.
Mahasiswa bisa membuat program yang memerlukan perulangan.
b.
Mahasiswa bisa memilih / menentukan statement looping yang paling sesuai dengan permasalahan yang harus
dipecahkan.
c.
Mahasiswa bisa menentukan statement
control yang tepat untuk program yang dibuat.
B. DASAR TEORI
1. Ekspresi
Ekspresi merupakan suatu operator, dimana operator ini
memberikan suatu sifat atau keadaan, yang di berlakukan pada suatu variable, dengan kata lain ekspresi
memberikan atau menunjukan kondisi yang ada pada suatu variable.
Contoh :
1 + 2 merupakan contoh ekspresi yang dimana “ + “ merupakan
operator ekspresinya, jadi operator “ + ” menunjukan kondisi apa
yang di berlakukan pada variable 1
dan 2 yakni di jumlahkan, sedangkan nilai 3 merupakan hasil ekspresi.
2.
Statement Control
Statement control merupakan sebuah statement
yang terdiri dari kondisi-kondisi yang dimana jika kondisi tersebut terpenuhi
program akan melakukan suatu instruksi tertentu. Jadi
dapat di katakan statement control
merupakan penunjuk arah bagi urutan suatu program.
Dalam bahasa C++ ada
beberapa jenis statement control
sebagai berikut :
a.
Konstruksi If
Pada konstruksi if sebuah konstruktur program hanya memiliki sebuah kondisi, artinya dimana suatu
instruksi atau beberapa instruksi akan di jalankan apabila sebuah kondisi
tersebut dipenuhi, namun apabila kondisi tersebut tidak terpenuhi maka
instruksi yang ada tidak akan
di jalankan.
Berikut sintaks
dari konstruksi if
|
if (kondisi)
{
Instruksi/statement;
}
|
b.
Konstruksi if – else
Pada konstruksi if else sedikit berbeda dengan
konstruksi if karena pada
konstruksi if
else . jika sebuah kondisi tidak terpenuhi maka program akan mencari
kondisi lain yang ada atau menjalankan instruksi yang berada di luar bagian
dari kondisi yang tidak terpenuhi.
Berikut sintaks
dari konstruksi if-else :
|
if (kondisi)
{
Statement/instruksi;
}
else
{
Statement/instruksi;
}
|
c.
Konstruksi if – else bersarang
Pada konstruksi ini terdapat lebih dari satu buah kondisi
jadi apabila sebuah kondisi
tidak terpenuhi maka akan berlanjut ke kondisi berikutnya tergantung berapa
banyak kondisi yang ada.
Berikut konstruksi if –else bersarang :
|
if (kondisi)
{
Statement/instruksi;
}
else
if (kondisi)
{
Statement/instruksi;
}
else
{
Statement/instruksi;
}
|
d.
Konstruksi switch – case
Konstruksi switch –
case sedikit berbeda dengan konstruksi if – else, di mana
konstruksi switch
– case lebih menguntungkan digunakan
pada program yang memiliki banyak pilihan kondisi dalam satu step dan jumlah kondisi sudah pasti. Jadi berbeda dengan statement if - else yang hanya memiliki 2 pilihan kondisi
pada satu step.
Berikut sintaks konstruksi switch – case :
|
Switch
(variabel)
{ Case
konstanta1
{
Statement;
Break;
}
Case konstanta ke-n
{
Statement;
Break;
}
}
|
3. Statement Looping
Statement Looping atau pengulangan dimana suatu instruksi dapat di laksanakan secara terus menerus
tergantung jumlah pengulangan atau batas pengulangan
yang telah di tentukan.
Struktur pengulangan terdiri dari dua buah bagian yaitu :
·
Kondisi
pengulangan, yaitu ekspresi Boolean
yang harus di penuhi untuk melakukan pengulangan
·
Isi
atau badan pengulangan, yaitu satu atau lebih pernyataan yang akan di ulang
Berikut macam konstruksi pengulangan
:
a. Konstruksi for
Konstruksi
for adalah perintah pengulangan yang
di gunakan apabila programmer sudah mengetahui berapa kali proses pengulangan
yang akan di lakukan, dan perintah for tidak membutuhkan suatu kondisi terpenuhi.
Berikut
sintaks programnya :
|
Deklarasi
peubah ;
for (peubah=nilai awal ; peubah=nilai akhir ;
kondisi)
{
Statement;
}
|
|
#include
<iostream.h>
#include
<conio.h>
void
main() {
int
i;
for
( i=0 ; i<5 ; i++ )
{
cout<<"looping
5 kali \n";
}
getch();
}
|
b. Konstruksi while
Konstruksi
while merupakan perintah pengulangan
yang di pakai apabila programmer tidak mengetahui berapa kali jumlah
pengulangan di lakukan, dan perintah while ini memungkinkan statement yang
ada pada konstruksinya tidak di lakukan sama sekali jika kondisi tidak di
penuhi.
Berikut sintaks programnnya :
|
While
(kondisi)
{
Statement;
}
|
c. Konstruksi do – while
Konstruksi do - while merupakan perintah pengulangan yang
di pakai apabila programmer tidak mengetahui berapa kali jumlah pengulangan di
lakukan perintah do - while sedikit berbeda dengan while karena pada perintah do - while, statement yang berada pada konstruksinya harus di laksanakan satu
kali walaupun kondisi yang ada tidak terpenuhi.
Berikut
sintaks programnya :
|
Do
{
Statement;
}
While
(kondisi);
|
C.
PERMASALAHAN
1.
Buatlah program untuk menampilkan
bilangan ganjil dan bilangan genap untuk rentang nilai 1-50.
Contoh: 1
= ganjil
2
= genap
Ø Progam untuk penyelesaian masalah diatas:
|
#include
<iostream.h>
#include <conio.h>
void main (){
int i;
for (i=1; i<=50; i++){
if
(i%2){
cout<<i<<" =
ganjil"<<endl; }
else {
cout<<i<<" =
genap"<<endl;}
}
getch ();
}
|
2.
Buatlah program menampilkan bilangan
ganjil dan genap seperti permasalahan diatas menggunakan pengulangan yang bukan
for dan ada perintah untuk memberhentikan
program diangka tertentu.
Ø Program untuk permasalahan di atas:
|
#include
<iostream.h>
#include <conio.h>
void main (){
int i = 1;
int a;
cout<<"ingin berhenti diangka=
"<<endl;
cin>>a;
cout<<endl;
while (i <= a && a<=50)
{
if(i%2==0){
cout<<i<<"
= ganjil"<<endl;
i++;
}
else{
cout<<i<<"
= genap"<<endl;
i++;}
}
getch ();
}
|
D.
ANALISA DATA
1. Permasalahan Pertama
|
#include
<iostream.h>
#include <conio.h>
|
Penggalan
script di atas merupakan file header dari program tersebut.
File header
mengandung beberapa fungsi atau perintah yang akan digunakan dalam program. File header ini sangat penting, karena
beberapa perintah tidak akan dapat dijalankan jika file header yang mendukung perintah tersebut tidak ditulis dalam
program. File header ini memiliki
ciri berakhiran “.h”
dan diarahkan oleh preprocessor
dirrective #include
sebagai gambaran kepada compilator
bahwa beberapa fungsi yang terdapat dalam file
header tersebut diikutkan dalam pembuatan program.
File
header yang digunakan dalam permasalah tersebut, yaitu:
·
#include
<iostream.h>
File
header ini diperlukan jika program yang kita buat
melibatkan cout dan cin, dimana
dalam program ini cout diartikan sebagai output yang akan ditampilkan setelah
program di compile dan cin diartikan
sebagai input untuk data yang akan di
compile.
·
#include
<conio.h>
File
header ini diperlukan untuk membaca perintah getch () yaitu untuk menunda tampilan program (output) langsung tertutup setelah
di compile.
|
void main (){
|
Penggalan
script diatas merupakan fungsi utama
yang pertama kali akan dieksekusi.
·
void main()
merupakan fungsi utama yang tidak memiliki nilai balik.
·
{ merupakan
operator penunjuk awal dari fungsi main ()
|
int i;
|
·
int i adalah merupakan pendeklarasian variable
i bertipe integer.
|
for (i=1; i<=50; i++){
|
·
Didalam
program tersebut menggunakan pengulangan for karena kita mengetahui berapa kali proses pengulangan akan dilakukan.
Didalam tanda kurung merupakan kondisi yang kita permisalkan dimana variable i itu sama dengan 1 dan nilai i itu kurang dari dan sama dengan 50 untuk pengulangan
setiap i ditambah dengan 1. Didalam kondisi for untuk setiap pernyataan di selang dengan tanda semicolon (;)
|
if (i%2){
cout<<i<<" =
ganjil"<<end l;
}
else {
cout<<i<<" = genap"<<endl;}
}
|
Dalam program tersebut menggunakan kontruksi if – else dimana jika sebuah kondisi tidak terpengaruhi maka
program akan menacari kondisi lain yang ada atau menjalankan intruksi yang
berada di luar bagian dari kondisi yang tidak terpenuhi.
· if (i%2){
cout<<i<<"
= ganjil"<<endl; }
Merupakan kondisi pertama dimana jika int i
atau nilai dari variable i memiliki
sisa pembagi dengan dua, maka saat compile
akan menampilkan bahwa bilangan tersebut adalah ganjil.
· else {
cout<<i<<"
= genap"<<endl;}
Merupakan kondisi kedua jika kondisi
pertama tidak terpenuhi dan setelah compile
akan menampilkan bahwa bilangan tersebut adalah genap.
|
getch ();
}
|
· getch(); merupakan
statement penundaan dimana setelah compile program tidak akan langsung tertutup.
·
} merupakan
akhir dari sebuah program.
Cara kerja program:
Saat program dijalankan mka compiler pertama kali akan mengeksekusi
fungsi main ()
kemudian menampilkan statement-statement yang ada pada cout ke layar. Dalam program tersebut menggunakan perulangan for untuk menampilkan nilai 1 sampai 50. Di
dalam perulangan for
tersebut terdapat kontruksi if – else dimana saat compile jika bilangan ganjil
dia akan memberikan keterangan ganjil dan jika bilangan genap maka akan
menampilkan keterangan genap.
2. Permasalahan kedua
|
#include
<iostream.h>
#include <conio.h>
|
Penggalan
script di atas merupakan file header dari program tersebut.
File header
mengandung beberapa fungsi atau perintah yang akan digunakan dalam program. File header ini sangat penting, karena
beberapa perintah tidak akan dapat dijalankan jika file header yang mendukung perintah tersebut tidak ditulis dalam
program. File header ini memiliki
ciri berakhiran “.h”
dan diarahkan oleh preprocessor
dirrective #include
sebagai gambaran kepada compilator
bahwa beberapa fungsi yang terdapat dalam file
header tersebut diikutkan dalam pembuatan program.
File
header yang digunakan dalam permasalah tersebut, yaitu:
·
#include
<iostream.h>
File
header ini diperlukan jika program yang kita buat
melibatkan cout dan cin, dimana
dalam program ini cout diartikan sebagai output yang akan ditampilkan setelah
program di compile dan cin diartikan
sebagai input untuk data yang akan di
compile.
·
#include
<conio.h>
File
header ini diperlukan untuk membaca perintah getch () yaitu untuk menunda tampilan program (output) langsung tertutup setelah
di compile.
|
void main (){
|
Penggalan
script diatas merupakan fungsi utama
yang pertama kali akan dieksekusi.
·
void main()
merupakan fungsi utama yang tidak memiliki nilai balik.
·
{ merupakan
operator penunjuk awal dari fungsi main ()
|
int i = 1;
int a;
|
·
int i=1 adalah merupakan pendeklarasian variable
i bertipe integer.
·
int a adalah merupakan pendeklarasian varieble
i bertipe integer dimana a meupakan nilai yang di-input-kan dalam program.
|
cout<<"ingin berhenti diangka=
"<<endl;
cin>>a;
cout<<endl;
|
cout<<”ingin berhenti diangka = “<<endl; merupakan statement
untuk menampilkan “ingin berhenti diangka = “ dan saat nilai dimasukkan itulah
fungsi dari statement cin>>a; untuk menginputkan data dengan nama variable
a.
Fungsi dari statement cout<<endl; adalah untuk menampilkan enter
sebelum statement selajutnya.
|
while (i <= a
&& a<=50)
|
while (i <= a &&
a<=50) merupakan fungsi pengulangan dimana pengecekan kondisi dilakukan pada awal.
Pengulangan akan dilakukan apabila nilai dari integer i lebih kecil dan
sama dengan a dan nilai dari integer a lebih kecil dan
sama dengan 50. Jika input yang
dimasukkan atau nilai a yang dimasukkan tidak memenuhi kondisi tersebut,
maka perulangan tidak akan dilakukan.
|
{
if(i%2==0){
cout<<i<<"
= genap"<<endl;
i++;
}
else{
cout<<i<<"
= ganjil"<<endl;
i++;}
}
|
Merupakan
statement untuk perulangan while. if
(i%2==0) maksudnya jika integer i dibagi dua memiliki sisa sama dengan nol, maka yang akan ditampilkan
adalah “ = genap”. i++: maksudnya untuk setiap perulangan bilangan integer i ditambahkan satu. else maksudnya jika kondisi
pertama tidak terpenuhi, maka program akan menampilkan “ = ganjil.
|
getch ();
}
|
· getch(); merupakan
statement penundaan dimana setelah compile program tidak akan langsung tertutup.
·
} merupakan
akhir dari sebuah program.
Cara kerja program:
Saat program dijalankan maka compiler pertama kali akan mengeksekusi
fungsi main ()
kemudian menampilkan statement-statement
yang ada pada cout ke
layar. Dalam program tersebut menggunakan perulangan while dimana terdapat dua pernyataan kondisi yang
diselang dengan operator logika AND, dimana dalam perulangan tersebut terdapat
kontruksi if – else yang
menampilkan ganjil apabila bilangan memiliki sisa bagi dengan dua dan akan
menampilkan genap untuk kondisi yang bukan merupakan kondisi pertama. Perintah
while ini memungkinkan statement yang ada pada konstruksinya tidak dilakukan
sama sekali jika kondisi tidak terpenuhi, seperti berikut:
Dalam hasil compile program, jika kita memasukkan nilai atau angka yang tidak memenuhi dari kondisi
yang sudah ditetapkan, maka konstruksi tidak akan dilakukan sma sekali sehingga
program tidak akan dijalankan. Misalkan kita memasukkan angka 77.
E.
KESIMPULAN
Dalam praktikum tersebut, dapat
disimpukkan bahwa:
1. Statement control if – else
digunakan jika terdapat dua kondisi, program akan mencari kondisi lain yang ada
atau menjalankan instruksi yang berada di luar bagian dari kondisi yang tidak
terpenuhi.
2. Statement control switch – case digunakan pada program yang
memiliki banyak pilihan kondisi dalam satu step
dan jumlah kondisi sudah pasti.
3. Pengulangan for digunakan
apabila programer sudah mengetahui
berapa kali proses pengulangan yang akan dilakukan, dan perintah for tidak membutuhkan suatu kondisi
terpenuhi. Dan untuk pengulangan for setiap penyataan kondisinya diselang dengan tanda semicolon.
4. Pengulangan while
digunakan apabila programer tidak
mengetahui berapa kali jumlah pengulangan di lakukan, dan perintah while memungkinkan statement yang ada pada konstruksinya tidak dilakukan sama sekali
jika kondisi tidak terpenuhi. Dan untuk pengulangan while setiap kondisinya diselang dengan operator logika.
5. Pengulangan do - while
meurpakan perintah pengulangan yang dipakai apabila programer tidak mengetahui berapa kali jumlah pengulangan
dilakukan. Berbeda dengan while, pada do – while statement akan dilaksanakan minimal satu kali walaupun kondisi tidak terpenuhi.
DAFTAR PUSTAKA
Frieyadie. 2006. “Panduan pemrograman C++”. Penerbit Andi: Yogyakarta.
Utama, Ditdit N., Widyanti
Riya.2005. “Algoritma dan Pemrograman dengan Borland C++”. Graha Ilmu:Yogyakarta.
Kadir, A. 2010. Algoritma & Pemograman Menggunakan C
& C++. Yogyakarta:
Penerbit ANDI.
Firman. “Statemrnt Control dalam bahasa ++”. http://firman-rpl.blogspot.com/2012/07/statement-control-dalam-bahasa.html (diakses pada 21 Januari 2015, 22:00 WITA)
TUGAS TAMBAHAN
1.
Buatlah program dengan menampilkan yang sama seperti
permasalahn satu, namun dengan perulangan do –
while.
Ø Program untuk
permasalahan diatas:
|
#include <iostream.h>
#include <conio.h>
int main (){
char x;
do{
clrscr ();
int i=1;
do{
if
(i%2 == 0){
cout<<i<<"
= genap"<<endl;
i++;
}
else {
cout<<i<<" =
ganjil"<<endl;
i++;}
}
while (i<=50);
cout<<"Apakah anda
ingin mengulang? (y/n)";
cin>>x;
}
while (x == 'y' || x == 'Y');
getch ();
}
|
Ø Cara kerja program:
Saat
program dijalankan maka compiler pertama
kali akan mengeksekusi fungsi main () kemudian menampilkan statement-statement
yang ada pada cout ke
layar. Dalam program tersebut menggunakan perulangan do – while dimana pengecekan kondisinya dilakukan di akhir,
jadi statement akan dijalankan
minimal satu kali walaupun kondisinya tidk terpenuhi.
2. Buatlah program dengan menggunakan statement
control switch – case.
Ø Program untuk permasalahan diatas:
|
#include <iostream.h>
#include
<conio.h>
void main (){
int pilihan;
char x;
do {
cout<<"1.
Perulangan for menentukan ganjil genap "<<endl;
cout<<"2.
Perulangan while ganjil genap menentukan angka berhenti "<<endl;
cout<<"3.
Perulangan do while ganjil genap"<<endl;
cout<<"Masukkan
pilihan : ";
cin>>pilihan;
switch (pilihan)
{
case 1:{
for (int i=1; i<=50; i++){
if
(i%2 == 0){
cout<<i<<"
= genap"<<endl;}
else {
cout<<i<<"
= ganjil"<<endl;}
}
break;
}
case 2:{
int i=1;
int a;
cout<<"ingin
berhenti diangka= "<<endl;
cin>>a;
while (i <= a && a<=50)
{
if(i%2
== 0){
cout<<i<<"
= genap"<<endl;
i++;
}
else{
cout<<i<<"
= ganjil"<<endl;
i++;}
}
break;
}
case 3:{
int i = 1;
do{
if
(i%2 == 0){
cout<<i<<"
= genap"<<endl;
i++;
}
else {
cout<<i<<" =
ganjil"<<endl;
i++;}
}
while (i<=50);
break;
}
}
cout<<"Apakah
anda ingin mengulang? (y/n)";
cin>>x;
}
while (x=='y');
getch ();
}
|
Ø Cara kerja program:
Saat program dijalankan maka compiler pertama kali akan mengeksekusi
fungsi main ()
kemudian menampilkan statement-statement
yang ada pada cout ke
layar. Dalam program tersebut terdapat menu yang bisa kita pilih untuk
ditampilkan dan kita bisa mengulang apabila kita mengunginkannya. Untuk
menampilkan ketiga menu dalam program tersebut digunakan statement control switch – case dimana saat kita menginputkan angka 2 maka pilihan kedualah yang akan
dijalankan. Dan untuk menanyakan apakah anda ingin mengulang digunakan
perulangan do – while.
Tidak ada komentar:
Posting Komentar