1 of 11

Algoritma 1 *)

Statement Pemilihan (lanjutan)

Pertemuan Ke-6

2 of 11

if kondisi then

aksi1

else

aksi2

endif

Pemilihan Dua Kasus

Menggunakan konstruksi IF-THEN-ELSE (jika-maka-kalau tidak) dalam bentuk pernyataan:

Aksi1 akan dilaksanakan jika kondisi bernilai benar, tetapi jika kondisi bernilai salah, maka aksi2 yang akan dilaksanakan.

3 of 11

Contoh Masalah Dua Kasus

Algoritma Cetak_Ganjil_atau_Genap

Deklarasi

Bil : integer

Deskripsi

Read(Bil)

if Bil mod 2 = 0 then

write(‘genap’)

else

write(‘ganjil’)

endif

EndAlgoritma

Tulislah algoritma yang membaca sebuah bilangan bulat, lalu menuliskan pesan “genap” jika bilangan tersebut adalah genap atau “ganjil” jika bilangan tersebut adalah bilangan ganjil.

4 of 11

Pemilihan 3 kasus atau lebih

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

5 of 11

Contoh pemilihan tiga kasus atau lebih

Tuliskan algoritma untuk menentukan wujud air yang membaca termperatur air, T (dalam satuan derajat celcius) pada tekanan normal, lalu menentukan apakah wujud air tersebut  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

6 of 11

Contoh pemilihan tiga kasus atau lebih

Algoritma 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

EndAlgoritma

7 of 11

Contoh

Membuat algoritma untuk menentukan bilangan terbesar dari 3 bilangan bulat dengan membaca 3 bilangan tersebut

Algoritma Bilangan 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)

EndAlgoritma

8 of 11

Contoh

Algoritma PemilihanTigaKasus;

Deklarasi

bil:integer;

Algoritma

write('masukan sebuah bilangan’);

readln(bil);

if (bil<0) then

writeln(bil,'merupakan bilangan NEGATIF');

else

if (bil=0) then

writeln(bil,' merupakan bilangan NOL');

else

writeln(bil,' merupakan bilangan POSITIF');

endif

endif

EndAlgoritma

Membuat algoritma untuk menentukan bilangan positif, negatif dan nol

9 of 11

1. Buatlah algoritma untuk menentukan discount belanja

Jika belanja > 500.000, maka discoubnt 15%

Jika belanja 300.000 sampai dengan 500.000 discount 10%“

Jika belanja < 300.000 maka tidak mendapatkan diskon”.

Total Belanja = jumlah belanja - discount

2. Buatlah algoritma untuk menentukan jabatan

Jika Id_jabatan = “JF001” maka Nama_jabatan = “Manager”,

Jika Id_jabatan = “JF002” maka Nama_jabatan = “Programmer”,

Jika Id_jabatan = “JF003” maka Nama_jabatan = “Finance”,

Jika Id_jabatan = “JF004” maka Nama_jabatan = “Staff”.

Tugas

10 of 11

Referensi

Anita Sindar RMS, S.T.M.T.I. 2019. Struktur Data Dan Algoritma Dengan C++. https://books.google.co.id/books?id=GP_ADwAAQBAJ.

Niklus Wirth, Algoritma dan Struktur Data, Andi Yogyakarta 1997

Lafore, Robert. 2002. Science Data Structures and Algorithms in Java (2nd Edition). http://www.amazon.com/Data-Structures-Algorithms-Java-2nd/dp/0672324539.

Emy Setyaningsih. 2012. Struktur Data.

Heri Sismoro, Struktur Data Pemrograman Dengan Pascal, Andi Offset 2004

Insap Santosa, Struktur Data Menggunakan Turbo Pascal 6.0, Andi Offset 2004

Rinaldi Munir, Algoritma dan Pemrograman dalam Bahasa Pascal dan C, Informatika 2012

Donald Knuth, The Art Of Computer Programming, Volume 1 / Fundamental Algorithms, 2nd edition, Addison Wesley

11 of 11