algo temu 5 statement pemilihan
DESCRIPTION
Tatap Muka 5 Algoritma 1 - Statement PemlihanTRANSCRIPT
Menggunakan konstruksi IF-THEN (jika-maka)
dalam bentuk pernyataan :
Ingatlah bahwa aksi sesudah kata then akan
dikerjakan hanya jika kondisi bernilai true.
if kondisi then
aksi
endif
Dibaca sebuah bilangan bulat dari suatu
piranti masukkan. Diminta mencetak pesan
“bilangan genap” jika bilangan tersebut
adalah genap. Bilangan genap adalah
bilangan yang habis dibagi dengan 2. Tulislah
algoritmanya.
Algoritma Mencetak Pesan “Bilangan Genap”
1. Read A
2. if A mod 2 = 0 then
3. write “Bilangan Genap”
4. end if
Menggunakan konstruksi IF-THEN-ELSE (jika-maka-kalau tidak) dalam bentuk pernyataan:
Aksi 1 akan dilaksanakan jika kondisi bernilaibenar, tetapi jika kondisi bernilai salah,maka aksi 2 yang akan dilaksanakan.
if kondisi then
aksi 1
else
aksi 2
endif
Tulislah algoritma yang membaca sebuahbilangan bulat, lalu menuliskan pesan“genap” jika bilangan tersebut adalah genapatau “ganjil” jika bilangan tersebut adalahbilangan ganjil.
Algoritma Cetak “Ganjil” atau “Genap”
1. Read bil
2. if bil mod 2 = 0 then
3. write genap
4. write ganjil
5. endif
Masalah yang mempunyai tiga buah kasus atau
lebih tetap dapat dianalisis dengan struktur IF-
THEN-ELSE sebagaimana halnya pada masalah
dengan dua kasus
if kondisi1 then
aksi1
else
if kondisi2 then
aksi2
else
if kondisi3 then
aksi3
endif
endif
endif
if kondisi1 then
aksi1
else
if kondisi2 then
aksi2
else
if kondisi3 then
aksi3
else
if kondisi4 then
aksi4
endif
endif
endif
endif
Contoh menentukan wujud air
Tuliskan algoritma yang membaca termperatur air,T, (dalam satuan derajat celcius) pada tekanannormal, lalu menentukan apakah wujud airtersebut dalam keadaan padat (T < 0 ), cair(0<T<100), atau gas (T>100).
Penyelesaian Misalkan suhu air adalah T
Analisis kasus Kasus 1, jika T < 0, maka air berwujud padat Kasus 2, jika 0 < T < 100, maka air berwujud cair Kasus 3, jika T > 100, maka air berwujud uap
PROGRAM WujudAir
(Menentukan wujud air: padat, cair, atau gas, bergantung pada
suhunya )
DEKLARASI
T : real (suhu air, dalam derajat celcius)
ALGORITMA
read(T)
if T > 0 then
write(‘padat’);
else
if (T > 0) and (T < 100) then
write(‘cair’)
else
if T > 100 then
write(‘gas atau uap’)
endif
endif
endif
Menentukan bilangan terbesar dari 3 bilangan bulat dengan
membaca 3 bilangan tersebut
PROGRAM Maksimun
Deklarasi
A, B, C, maks : integer
Algoritma
Read(A,B,C)
If A>B then
maks = A
else
maks = B
end if
If C> maks then
maks = C
endif
Write(maks)
program ifTigaKasus;
var bil:integer;
begin
write('masukan sebuah bilangan'); readln(bil);
if (bil<0) then
begin
writeln(bil,' merupakan bilangan NEGATIF');
end else
if (bil=0) then
begin
writeln(bil,' merupakan bilangan NOL');
end else
begin
writeln(bil,' merupakan bilangan POSITIF');
end;
end.
1. Dibaca dua buah bilangan yang membedakan apakah A > B,
apabila lebih besar maka berkomentar “Benar”
2. Dibaca dua buah bilangan yang membedakan apakah A < B,
apabila lebih kecil maka berkomentar “Salah”
3. Apabila tinggi seseorang > 160cm, dikategorikan “Manusia
Melar”
4. Apabila yang dimasukkan angka > 5, maka Y = angka*10+100
5. Apabila nilai ujian < 60, maka “Tidak Lulus”
6. Jika Total Belanja > 5jt, maka mendapat diskon 5% dari
total belanja
7. Menentukan bilangan yang dimasukkan adalah bilangan
genap
8. Apabila Total Belanja < 100.000, maka “Tidak Mendapatkan
Diskon”. [Total Belanja = Quantity Barang*Harga Brg]
9. Menentukan tahun yang dimasukkan adalah tahun kabisat
Struktur CASE dapat digunakan untukmenganalisis penyeleksian dua kasusatau lebih dan bentuknya adalah lebihsederhana dari pada struktur IF-THEN-ELSE yang memiliki bentukbertingkat-tingkat
Kondisi1, kondisi2, … kondisiN dapatbernilai benar atau salah. Tiap kondisidiperiksa nilai pertama sampaiditemukan kondisi yang benar. Jika kondisi ke-k benar, maka aksi ke-k
dilaksanakan, selanjutnya keluar daristruktur CASE
Aksi yang dipasangkan dengan kondisi ke-kdapat lebih dari satu, karena itu ia beruparuntunan
Jika tidak ada satupun kondisi yang benar,maka aksi sesudah otherwise (optional)dikerjakan.
case (nama)
kondisi1 : aksi1
kondisi2 : aksi2
kondisi3 : aksi3
.
.
.
kondisiN : aksiN
[otherwise aksiX]
endcase
Buatlah algoritma yang membaca sebuah
angka bulat yang nilainya terletak antara 1
sampai 4, lalu menuliskan ke piranti keluaran
angka tersebut dalam kata-kata. Misalkan
bila dibaca angka 1, maka tercetak tulisan
“satu”, bila dibaca 2, maka tercetak tulisan
“dua”, demikian seterusnya. Jika angka yang
dimasukkan selain 1 sampai 4 tuliskan pesan
bahwa angka yang dimasukkan salah.
Algoritma NAMA_BULAN
{ Mencetak nama bulan berdasarkan nomor bulannya }
DEKLARASI
AngkaBulan : integer { 1..12 }
DESKRIPSI :
read(AngkaBulan)
case(AngkaBulan)
AngkaBulan=1 : write(‘Januari’)
AngkaBulan=2 : write(‘Februari’)
AngkaBulan=3 : write(‘Maret’)
AngkaBulan=4 : write(‘April’)
AngkaBulan=5 : write(‘Mei’)
AngkaBulan=6 : write(‘Juni’)
AngkaBulan=7 : write(‘Juli’)
AngkaBulan=8 : write(‘Agustus’)
AngkaBulan=9 : write(‘September’)
AngkaBulan=10 : write(‘Oktober’)
AngkaBulan=11 : write(‘Nopember’)
AngkaBulan=12 : write(‘Desember’)
otherwise write(‘Bukan nomor bulan yang benar’)
endcase
program NAMA_BULAN;
{ Mencetak nama bulan berdasarkan nomor bulannya }
(* DEKLARASI *)
var
AngkaBulan : integer;
(* DESKRIPSI *)
begin
write(‘Masukkan angka bulan (1 – 12) : ‘);
readln(AngkaBulan);
case AngkaBulan of
1 : writeln(‘Januari’);
2 : writeln(‘Februari’);
3 : writeln(‘Maret’);
4 : writeln(‘April’);
5 : writeln(‘Mei’);
6 : writeln(‘Juni’);
7 : writeln(‘Juli’);
8 : writeln(‘Agustus’);
9 : writeln(‘September’);
10 : writeln(‘Oktober’);
11 : writeln(‘Nopember’);
12 : writeln(‘Desember’);
else writeln(‘Bukan nomor bulan yang benar’);
end;
end.
Tidak semua bahasa pemrograman
menyediakan struktur CASE (misalnya Bahasa
Fortran). Bahasa Pascal dan C menyediakan
struktur ini. Jika bahasa pemrograman tidak
menyediakan struktur CASE, maka struktur
CASE dapat diganti dengan struktur IF-THEN-
ELSE yang ekivalen
1. Buatlah algoritma yang membaca angka bulan (integer), lalu menuliskan nama
bulan sesuai angka bulannya. Misalnya jika dibaca bulan 8, maka tercetak
‘Agustus’.
2. Sebuah program mempunyai menu sebagai berikut:
===== MENU =====
1. Baca data
2. Cetak data
3. Ubah data
4. Hapus data
5. Keluar program
=================
Pilihan Anda =
=================
Buatlah algoritma yang mencetak menu tersebut dan membaca nomor pilihan
menu. Untuk nomor menu yang dipilih, tuliskan pesan seperti contoh berikut
Anda memilih menu nomor
Yang dalam hal ini adalah nomor menu yang dipilih oleh pengguna
3. Buatlah algoritma untuk menentukan: luas empat persegi panjang, keliling empat
persegi panjang, dan panjang diagonal, lengkapi program dengan pilihihan menu:
1) Luas, 2) Keliling, 3) Panjang diagonal, 4) Keluar program. Pada setiap pilihan
menu, dibaca panjang dan lebar empat persegi panjang.
Luas persegi panjang = P * L
Keliling persegi panjang = 2*panjang + 2*lebar
Diagonal = sqrt(P*P + lebar*lebar)