decision 1 (penyeleksian kondisi)

advertisement
MODUL PERKULIAHAN
ALGORITMA PEMROGRAMAN
DAN STRUKTUR DATA (LAB)
Universitas Mercu Buana
2014
Fakultas
Program Studi
Ilmu Komputer
Teknik Informatika
Tatap Muka
01
Kode MK
Disusun Oleh
Umniy Salamah ST., MMSI
Abstract
Kompetensi
Decision digunakan untuk memilih
salah satu alternatif jawaban yang
tepat dari pilihan yang ada.
Fungsi penyeleksian kondisi penting
artinya dalam penyusunan bahasa C,
terutama untuk program yang
kompleks.
Mampu menerapkan pemilihan dalam
pemecahan masalah menggunakan
bahasa
pemrograman.
Mampu
menggunakan
Struktur
pemilihan
dengan if dan dapat mengelola data
yang diinput dari keyboard..
DECISION 1 (PENYELEKSIAN KONDISI)
Decision digunakan untuk memilih salah satu alternatif jawaban yang tepat dari pilihan yang
ada. Penyeleksian kondisi dapat diibaratkan sebagai katup atau kran yang mengatur
jalannya air. Bila katup terbuka maka air akan mengalir dan sebaliknya bila katup tertutup air
tidak akan mengalir atau akan mengalir melalui tempat lain. Fungsi penyeleksian kondisi
penting artinya dalam penyusunan bahasa C, terutama untuk program yang kompleks.
1.1. STRUKTUR KONDISI “IF”
Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu kondisi
tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada
di dalam blok if akan diproses dan dikerjakan. Bentuk umum struktur kondisi if adalah:
if(kondisi)
pernyataan;
Listing Program 1. Contoh Program Struktur Kondisi IF Untuk Memeriksa Suatu Kondisi
/* Program struktur kondisi if untuk memeriksa suatu kondisi */
#include <stdio.h>
#include <conio.h>
void main()
{
float nilai;
printf(“Masukan nilai yang didapat : “);
scanf(“%f”, &nilai);
if(nilai > 65)
printf(“\n ANDA LULUS !!!!\n”);
getch();
}
Bila program tersebut dijalankan dan kita memasukan nilai 80, maka perintah mencetak
perkataan LULUS !!!! akan dilaksanakan, namun sebaliknya bila kita memasukan
sebuah nilai yang kurang dari 65 maka program akan berhenti dan tidak dihasilkan apaapa.
Listing Program 2. Contoh Penerapan Struktur Kondisi IF
/* Program Contoh penerapan struktur kondisi if */
#include<stdio.h>
#include<conio.h>
main()
{
clrscr();
int a,b,c,max;
printf("Entry bil 1 : ");scanf("%i",&a);
printf("Entry bil 2 : ");scanf("%i",&b);
printf("Entry bil 3 : ");scanf("%i",&c);
if((a>b)&&(a>c))
max=a;
if((b>a)&&(b>c))
max=b;
if((c>a)&&(c>b))
max=c;
printf("Bil terbesar : %i\n",max);
if(max>0)
printf("Bil tsb adalah bil positif\n");
if(max<0)
printf("Bil tsb adalah bil negatif");
getch();
}
2012
3
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
1.2. STRUKTUR KONDISI “IF…ELSE…”
Dalam struktur kondisi if.....else minimal terdapat dua pernyataan. Jika kondisi yang
diperiksa bernilai benar atau terpenuhi maka pernyataan pertama yang dilaksanakan dan
jika kondisi yang diperiksa bernilai salah maka pernyataan yang kedua yang dilaksanakan.
Bentuk umumnya adalah sebagai berikut :
if(kondisi)
pernyataan-1
else
pernyataan-2
Listing Program 3. Contoh Penerapan Struktur Kondisi IF ELSE
#include <stdio.h>
#include <conio.h>
void main()
{
float nilai;
clrscr();
printf(“Masukan nilai yang didapat : “);
scanf(“%f”, &nilai); /* Masukan akan disimpan dalam variabel nilai
*/
if (nilai > 65)
printf(“\n LULUS !!!\n”);
else
printf(“\n TIDAK LULUS !!!\n”);
getch();
}
Bila program tersebut dijalankan dan kita memasukan nilai 80 maka akan dicetak perkataan
“LULUS !!!” namun bila kita memasukan nilai yang kurang dari 65 maka akan tercetak
2012
4
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
perkataan “TIDAK LULUS !!!”. Hal ini berbeda dengan struktur if dimana program akan
berhenti bila kita memasukan nilai kurang dari 65.
1.3. PERINTAH SWITCH
Perintah SWITCH merupakan pernyataan yang dirancang untuk menangani pengambilan
keputusan yang melibatkan sejumlah pilihan alternatif yang diantaranya untuk menggantikan
pernyataan IF bertingkat.
Bentuk umumnya adalah sebagai berikut :
SWITCH (Ekspresi)
{
Case konstanta1 :
pernyataan1;
break;
Case konstanta2 :
pernyataan2;
break;
Case konstanta3 :
Pernyataan3;
break;
...
Case Konstanta_n :
Pernyataan_n ;
Break;
Default :
Pernyataan_alternatif ; /* apabila semua nilai di
atas tidak terpenuhi */
}
Ekspresi dapat berupa ungkapan yang bernilai integer atau bertipe karakter. Setiap
konstanta1, konstanta2, konstanta3, konstanta4 sampai dengan konstantan dapat
berupa konstanta integer atau konstanta karakter.
2012
5
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
Setiap pernyataan1, pernyataan2, pernyataan3, pernyataan4 sampai pernytaannxdapat
berupa sebuah atau beberapa pernyataan.
Pengujian pada switch akan dimulai dari konstanta1. apabila nilainya cocok dengan
ekspresi maka pernyataan satu akan dijalankan.
Perintah break mnyebabkan eksekusi diarahkan ke akhir switch kalau nilai konstanta
satu tidak sama dengan nilai ekspresi dan kemudian baru diteruskan pengujian dengan
konstanta2 dan seterusnya. Jika sampai pada pengujian akhir tidak ada yang cocok
maka default akan dijalankan.
Jika pernyataan break tidak diikutsertakan pada setiap case maka walaupun
konstantanya cocok denan ekspresi, maka setelah pernyataan pada case tersebut
dikerjakan akan dilanjutkan pada case berikutnya sampai ditemui pernyataan break
pada akhir switch.
Listing Program 5. Contoh program case_1
/*---------------------------------------------*/
/* program : case.cpp
*/
/*--------------------------------------------*/
#include <stdio.h>
main ( )
{
int kdhari ;
printf (“ masukkan kode hari [1-7] : ”) ;
scanf (“%d” , &kdhari) ;
switch (kdhari)
{
case 1 :
printf (“ senin ”);
break;
case 2 :
printf (“ selasa ”);
break;
case 3 :
printf (“ rabu ”);
break;
2012
6
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
case 4 :
printf (“ kamis ”);
break;
case 5 :
printf (“ jum’at ”);
break;
case 6 :
printf (“ sabtu ”);
break;
case 7 :
printf (“ minggu ”);
break;
default :
Printf (“ Kode tidak ada “);
}
}
Bila program di atas dijalankan maka hasilnya adalah sebagai berikut :
Masukkan kode hari [1 – 7 ] : 1
Senin
Penjelasan :
Dari program di atas, apabila dimasukkan kode hari = 1, maka sesuai kondisi yang
diterapkan di dalam program yaitu case 1, maka pernyataan pertama yang ada pada
case satu yaitu mencetak hari senin. Apabila dimasukkan kode hari = 2, maka
pernyataan kedua yang ada pada case 2 yaitu mencetak hari Selasa yang akan
dikerjakan. Dan seterusnya tergantung dari kode hari yang dimasukkan.
2012
7
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
Listing Program 6. Contoh program case_2
/* Contoh lain program dengan switch */
#include<stdio.h>
main()
{
char cc;
printf("Ketikkan sebuah huruf = ");
scanf("%c",&cc);
switch(cc)
{
case 'a':
{
printf("Yang anda ketikkan adalah a\n");
break;
}
case 'i':
{
printf("Yang anda ketikkan adalah i\n");
break;
}
case 'u':
{
printf("Yang anda ketikkan adalah u\n");
break;
}
case 'e':
{
printf("Yang anda ketikkan adalah e\n");
break;
}
case 'o':
2012
8
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
{
printf("Yang anda ketikkan adalah o\n");
break;
}
default:
{
printf("Yang anda ketikkan adalah huruf mati\n");
}
}
return 0;
}
Bila program di atas dijalankan maka hasilnya adalah sebagai berikut :
Ketikkan sebuah huruf = a
Yang anda ketikkan adalah a
1.4. LATIHAN
Buat program dengan utput sebagai berikut :
MENU
1. Luas segitiga
2. Luas Persegi panjang
Pilihan anda :
Jika input pilihan anda dengan 1 maka :
Input alas = <diinput>
Input Tinggi = <diinput>
Luas segitiga yang didapat adalah = (didapat dari proses alas x tinggi / 2)
Jika input pilihan anda dengan 2 maka :
Input panjang = <diinput>
Input lebar = <diinput>
Luas Persegi panjang yang didapat = (didapat dari proses panjang x lebar)
2012
9
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
DAFTAR PUSTAKA
Hartono Jogiayanto, Konsep Dasar Pemrograman Bahasa C 2009. Yogyakarta
Bambang, Wirawan (2004), Struktur Data dengan C, Pernerbit Andi Jogyakarta.
Kristanto, Andri (2003), Struktur Data dengan C++, Penerbit Graha Ilmu
2012
10
Praktikum Algoritma dan Struk. Data
Umniy Salamah ST., MMSI
Pusat Bahan Ajar dan eLearning
http://www.mercubuana.ac.id
Download