algo temu 5 statement pemilihan

20
SENNA HENDRIAN

Upload: enna-hendan

Post on 04-Jul-2015

828 views

Category:

Education


8 download

DESCRIPTION

Tatap Muka 5 Algoritma 1 - Statement Pemlihan

TRANSCRIPT

SENNA HENDRIAN

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)