Anda di halaman 1dari 0

STRUKTUR DASAR ALGORTIMA

DAN PEMROGRAMAN
STMIK AMIKOM YOGYAKARTA
Kusnawi, S.Kom Th 2006
Selection Structure
Selection Structure
Struktur runtunan hanya terdapat pada program
sederhana.
Pada umumnya,masalah yang akan diselesaikan Memiliki beberapa
alternatif pelaksanaan aksi.
Biasanya selection terdiri dari operand yang dihubungkan dengan operator
relasi dan logika Yaitu: =, <>, >, <, >=, <=, and (dan) dan or (atau)
Struktur keputusan
Struktur keputusan adalah 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
Flowchart AND
Flowchart AND
Umur Umur < 30 < 30
dan dan
nilai nilai > 60 > 60
Capeg Capeg tidak tidak diterima diterima
Capeg diterima
T T
F F
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.
Flowchart OR
Flowchart OR
Usia Usia>60 >60
Atau Atau
MK>25 MK>25
Mendapat Mendapat
tunjangan tunjangan pensiun pensiun
Tidak Tidak mendapat mendapat
tunjangan tunjangan pensiun pensiun
T T
F F
Instruksi/Notasi
Instruksi/Notasi
Algoritmik
Algoritmik
IF Sederhana:
If <kondisi> then
<Aksi/Pernyataan>
endif
Aksi (dapat berupa satu atau lebih aksi)
hanya akan dilaksanakan bila kondisi bernilai
benar (true), jika kondisi bernilai salah, tidak
ada aksi apapun yang dikerjakan.
Aksi Aksi ( (dapat dapat berupa berupa satu satu atau atau lebih lebih aksi aksi ) )
hanya hanya akan akan dilaksanakan dilaksanakan bila bila kondisi kondisi bernilai bernilai
benar benar (true), (true), jika jika kondisi kondisi bernilai bernilai salah salah, , tidak tidak
ada ada aksi aksi apapun apapun yang yang dikerjakan dikerjakan. .
Flowchart If Then
Flowchart If Then
sederhana
sederhana
Contoh:
* IF komentar=coba THEN
Output(Anda memasukan kata yang benar)
ENDIF
* IF nilai = A OR nilai = B THEN
Output(Dapat mengikuti tes asisten)
ENDIF
* IF nilai<=100 AND nilai>=80THEN
Output(Nilai A)
ENDIF
IF-ELSE:
If <kondisi> then
<Aksi 1/Pernyataan1 >
else
<Aksi 2/Pernyataan2 >
endif
Aksi 1 atau pernyataan-1 akan dikerjakan
jika kondisi dalam keadaan benar/true dan
sebaliknya jika kondisi salah/false maka
pernyataan-2 atau aksi 2 yang akan
dikerjakan.
Aksi 1 atau pernyataan Aksi 1 atau pernyataan- -1 akan dikerjakan 1 akan dikerjakan
jika kondisi dalam keadaan benar/true dan jika kondisi dalam keadaan benar/true dan
sebaliknya jika kondisi salah/false maka sebaliknya jika kondisi salah/false maka
pernyataan pernyataan- -2 atau aksi 2 yang akan 2 atau aksi 2 yang akan
dikerjakan. dikerjakan.
Flowchart If Then Else
Flowchart If Then Else
Contoh:
* IF komentar=coba THEN
Output(Anda memasukan kata yang benar)
else
Output(Error)
ENDIF
* IF nilai = A OR nilai = B THEN
Output(Dapat mengikuti tes asisten)
Else
Output(Maaf tidak Bisa )
ENDIF
Contoh Implementasi Pascal:
uses crt;
var
nilai : char;
begin
clrscr;
write ('masukan nilai anda :'); readln(nilai);
if nilai :="A" OR nilai:="B" then
write('Dapat mengikuti asisten oye')
else
write(' Maaf tidak bisa oyeess');
readln;
end.
IF-ELSE Bersyarang:
IF <kondisi_1> THEN
<Aksi1/pernyataan_1>
ELSE <kondisi_2> THEN
<Aksi2/pernyataan_2>
ELSE IF <kondisi_N> THEN
<AksiN/pernyataan_N>
ELSE
<pernyataan_m>
ENDIF
pernyataan yang mempunyai banyak pilihan, jika
kondisi_1 yang terpenuhi maka yang akan
dikerjakan adalah Aksi 1 atau penyataan_1 dan jika
kondisi_2 yang terpenuhi maka yang akan dipilih
adalah Aksi2/pernyataan_2, jika tidak ada kondisi
yang terpenuhi maka yang akan dipilih adalah
setelah instruksi ELSE yaitu pernyataan_M
pernyataan yang mempunyai banyak pilihan, jika pernyataan yang mempunyai banyak pilihan, jika
kondisi_1 yang terpenuhi maka yang akan kondisi_1 yang terpenuhi maka yang akan
dikerjakan adalah Aksi 1 atau penyataan_1 dan jika dikerjakan adalah Aksi 1 atau penyataan_1 dan jika
kondisi_2 yang terpenuhi maka yang akan dipilih kondisi_2 yang terpenuhi maka yang akan dipilih
adalah Aksi2/pernyataan_2, jika tidak ada kondisi adalah Aksi2/pernyataan_2, jika tidak ada kondisi
yang terpenuhi maka yang akan dipilih adalah yang terpenuhi maka yang akan dipilih adalah
setelah instruksi ELSE yaitu pernyataan_M setelah instruksi ELSE yaitu pernyataan_M
Contoh :
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 Implementasi Pascal
uses crt;
var
beli:longint;
begin
clrscr;
write('masukan jumlah pembelian');readln(beli);
if beli >=100000 then write(' diskon 10 %')
else if beli>=50000 then write(' bonus piring')
else if beli>=10000 then write(' Bonus Gelas')
else
write(Tidak ada Bonus');
readln;
end.
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 IF-THEN
BERSYARANG
Flowchart Case
Flowchart Case
Jenis case: Prinsip sama tetapi sesuai dengan
struktur program dan Syntax dari bahasa
pemrograman yang dipakai
Contoh Contoh C/C++: C/C++:
Switch (ekspresi)
{
case konstanta-1:
pernyataan-1 ; break;
case konstanta-2:
pernyataan-2 ; break;
case konstanta-n:
pernyataan-n; break;
default:
pernyataan-x;
}
Contoh
Contoh
Pascal:
Pascal:
CASE <variable> OF
<kondisi_1> : <pernyataan_1>
<kondisi_2> : <pernyataan_2>
<kondisi_3> : <pernyataan_3>
.
.
<kondisi_N> : <pernyataan_N>
ELSE
<pernyataan diluar kondisi yang dipilih>
END.
Contoh
Contoh
Basic:
Basic:
SELECT CASE <ekspresi>
CASE <ekspresi_1>
<Pernyataan_1>
CASE <ekspresi_2>
<Pernyataan_2>
.
.
CASE <ekspresi_N>
<Pernyataan_N>
CASE ELSE
<Pernyataan_M>
END SELECT
Contoh:
Input ( nilai)
SELECT CASE nilai
CASE 81 TO 100
Output=A
CASE 61 TO 80
Output=B
CASE 41 TO 60
Output=C
CASE 21 TO 40
Output=D
CASE 0 TO 20
Output=E
CASE ELSE
Output=KOSONG
END SELECT
Contoh Implemetasi Pascal:
program casedeh;
uses crt;
Var nilai: integer;
begin
clrscr;
write (' masukan nilai : '); readln(nilai);
case nilai of
81 .. 100 : begin write(' Nilai Yang di Dapatkan A'); readln;
end;
61 .. 80 : begin write(' Nilai Yang di Dapatkan B'); readln;
end;
41 .. 60 : begin write(' Nilai Yang di Dapatkan C'); readln;
end;
21 .. 40 : begin write(' Nilai Yang di Dapatkan D'); readln;
end;
0 .. 20 : begin write(' Nilai Yang di Dapatkan E'); readln;
end;
Else
begin write(' Anda salah memasukan Nilai'); readln;
end;
end.
Latihan:
1. Buatlah algoritma untuk menentukan bilangan yang di inputkan adalah bilangan genap, ganjil
dan Nol.
2. Tulis algoritma yang membaca dua buah bilangan bulat dari piranti masukan, lalu tentukan
bilangan terbesar dari kedua bilangan tersebut.
3. Program Menghitung Total Harga Barang
Jika Jumlah barang yang dibeli < 100 buah, maka harga perbarang yang
dibeli adalah Rp 10.000,-
Jika jumlah barang yang dibeli lebih besar dari atau sama dengan 100 dan
kurang daari 150, maka harga perbarang adalah Rp 9.500
Jika jumlah barang yang dibeli lebih dari atau sama dengan 150, maka
harga perbarang adalah RP 9.000,-
Masukan dari program ini adalah jumlah barang yang dibeli, Keluarannya adalah harga yang harus
dibayar
4. Untuk matakuliah Logika dan Algortima untuk penilaiannya sebagai berikut :
MID 30 %, Tugas 30 % dan UAS 40 %, sehingga total nilai yang di dapatkan adalah
(MID*0.3)+(tugas*0.3)+(UAS*0.4), Akan bernilai A jika total nilainya lebih besar atau sama dengan
85, bernilai B jika total nilainya lebih dari atau sama dengan 70 s.d kurang dari 85, bernilai C jika
total nainya lebih besar atau sama dengan 55 dan kurang dari 70 dan bernilai D jika kurang dari 55,
buatlah programnya .
More Information
TO BE CONTINUE

Anda mungkin juga menyukai