Selection Structure
Struktur runtunan hanya terdapat pada program sederhana.
Pada umumnya,masalah yang akan diselesaikan Memiliki beberapa alternatif pelaksanaan aksi.
Biasanya selectionterdiri dari operandyang dihubungkan dengan operator relasi dan logika Yaitu: =, <>, >, <, >=, <=, and (dan) dan or (atau)Struktur keputusanadalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. Pengujian kondisi ini dilakukan untuk memilih salah satu dari beberapa alternatif yang tersedia.
Hubungan Antar Kondisi
•Hubungan DAN (AND)
Merupakan hubungan antar kondisi yang mensyaratkan kedua kondisi terpenuhi.
Contoh :
Untuk menentukan penerimaan calon pegawai ditentukan
criteria sebagai:
•Umur dibawah 30 tahun
•Nilai test lebih besar dari 60
- Hubungan Atau(OR)
Merupakan hubungan antar kondisi yang mensyaratkan hanya salah satu kondisi yang terpenuhi.
Contoh:
Tunjangan pensiun diberikan kepada pegawai yang berusia lebih dari 60 tahun. Untuk pegawai yang mempunyai masa kerja lebih dari 25 tahun juga mendapat tunjangan tersebut.
Instruksi/Notasi Algoritmik
If Then sederhana : (Single-alternative )
if(kondisi)
{
/*aksi*/
}
Pernyataan atau aksi akan dikerjakan jika
kondisi bernilai benar dan jika salah maka aksi
atau pernyataan tidak dikerjakan
Pseudocode:
*IF nilai = “A”OR nilai = “B”THEN
Output(Dapat mengikuti tes asisten)
ENDIF
ContohNotasiC/C++:
*IF (nilai == “A”) || ( nilai == “B”)
{
cout << “Dapat mengikuti tes asisten”;
}
IF-then-ELSE: (Dual-alternative)
”Aksi1akan dikerjakan jika kondisi dalam keadaan benar/true dan sebaliknya jika kondisi salah/false maka pernyataan-2 atau aksi2 yang akan dikerjakan"
Pseudocode :
* IF nilai = 10 OR nilai = 9 THEN
Output(“Dapat mengikuti tes asisten”)
Else
Output(“Maaf tidak Bisa”)
ContohNotasiC/C++ :
ENDIF
* if ((nilai ==10 ) || ( nilai == 9 ))
{
cout << “Dapat mengikuti tes asisten”;
else
cout << “Maaf tidak Bisa”
}
Contoh Implementasi :
#include <conio.h>
#include <stdio.h>
void main()
{
intnilai;
cout<< " inputkannilaimatakuliah:";
cin>> nilai;
if ((nilai==10) || (nilai==9))
{
cout<< "Dapatmengikutitesasisten" <<endl;
}
else
{
cout<< " MaaftidakBisa";
}
getch();
}
Sample Pseudocode & Implemen
Algoritma/* menentukan positip/negatip*/
Kamus Data
bil : integer
ket : string
Begin
Input(bil)
Ket ‘positip’
If (bil<0) then
Ket ‘negatip’
End if
Output(Ket)
End
#include <stdio.h>
#include <conio.h>
/* menentukan positip/negatip */
int main() {
//Kamus Data
int bil;
char Ket[10];
//Begin
printf(“Masukkan bilangan: ”);
scanf(“%d”,&bil);
strcpy(Ket,”positip”);
if (bil<0) {
strcpy(Ket,”negatip”);
}
printf(“bil adalah %s”,Ket);
getche();
}
IF-THEN-ELSE Bersyarang (nested conditional/ Multiple-alternative)
”
”Aksi 1 akan dikerjakan jika kondisi1 dalam
keadaan benar/terpenuhi, jika kondisi2 maka
aksi 2 akan dikerjakan dan jika tidak ada
kondisi yang memenuhi maka aksi3 yang
dikerjakan”
Pseudocode :
IF beli>=100000 THEN
Output(Diskon 10%)
ELSE
IF beli>=50000 THEN
Output(Bonus piring)
ELSE
IF beli>=10000 THEN
Output(Bonus gelas)
ELSE
Output(Tak ada bonus)
ENDIF
ENDIF
ENDIF
Contoh Notasi C/C++ :
#include <iostream.h>
#include <conio.h>
void main()
{
intbeli;
cout<< " masukanhargapembelianbarang=";
cin>> beli;
if ( beli >= 10000)
{
cout<< " Mendapatkandiskon10 %";
}
else if ( beli>=50000)
{
cout<< " Mendapatkanbonus piring";
}
else if (beli>=10000)
{
cout<< " Mendapatkangelasdeh:D";
}
else
{
cout<< " nggakdapatapa-apa";
}
getch();
SWITCH-CASE
Struktur kondisi Case digunakan untuk penyeleksian
kondisi dengan kemungkinan yang terjadi cukup banyak.
Struktur ini akan melaksanakan salah satu dari beberapa pernyataan ‘case’ tergantung nilai kondisi yang ada
Struktur ini Alternatif penggunaan nested conditional
Syntax:
Contoh:
#include <conio.h>
#include <iostream.h>
void main()
{
int hari ;
cout << "Masukan kode hari = "; cin >> hari;
switch(hari)
{
case 1: cout << " Yang Anda Pilih Minggu , selamat berlibur"; break;
case 2: cout << " Yang Anda Pilih Senin, Kerja donx “;break;
case 3: cout << " Yang Anda Pilih Selasa, Kerja donx“;break;
case 4: cout << " Yang Anda Pilih Rabu, Kerja donx “;break;
case 5: cout << " Yang Anda Pilih Kamis,Kerja donx“;break;
case 6: cout << "Yang Anda Pilih Jumat, Kerja donx“;break;
case 7: cout << "Yang Anda Pilih Sabtu, santai ah..“;break;
default: cout << "kode yang anda inputkan tidak ada , Tidak ada hari lebih dari 7";
}
getch();
}
Algoritma NamaHari /* menentukan nama hari*/
Kamus Data NoHari : integer NmHari : string Begin |Input(NoHari) |Case NoHari | |1: NmHari ß ‘Senin’ | |2: NmHari ß ‘Selasa’ | |3: NmHari ß ‘Rabu’ | |4: NmHari ß ‘Kamis’ | |5: NmHari ß ‘Jumat’ | |6: NmHari ß ‘Sabtu’ | |7: NmHari ß ‘Minggu’ |End Case |Output(NmHari) End
#include <stdio.h>
#include <conio.h>
/* menentukan nama hari*/
int main()
{
//Kamus Data
int NoHari;
char NmHari[10];
//Begin
printf(“Masukkan nomor hari: ”); scanf(“%d”,&NoHari);
switch (NoHari)
{
case 1: strcpy(NmHari,”Senin”); break;
case 2: strcpy(NmHari,”Selasa”);break;
case 3: strcpy(NmHari,”Rabu”); break;
case 4: strcpy(NmHari,”Kamis”);break;
case 5: strcpy(NmHari,”Jumat”); break;
case 6: strcpy(NmHari,”Sabtu”); break;
case 7: strcpy(NmHari,”Mingu”);
}
printf(“Nama hari = %s ”,NmHari);
getche();
}
Terima Kasih Teruntuk Pak Kusnawi, S.kom,M.eng
No comments:
Post a Comment