Sunday 9 November 2014

algoritma dan pemograman C++ perulangan presentation transcript

Algoritma dan Pemrograman C++ (Perulangan) Presentation Transcript

  • 1. ALGORITMA DAN PEMROGRAMAN 1 Semester Ganjil 2013 - 2014 Logika Perulangan Beni Suranto, S.T., M.SoftEng
  • 2. Contoh kasus • Contoh 1: Mencetak bilangan dari 1 sampai dengan 10. • Contoh 2: Menghitung total bilangan genap antara 5 sampai dengan 45 • Contoh 3: Menghitung banyaknya karakter 'a' dari 25 karakter yang diinputkan lewat piranti masukan • Contoh 4: Mencetak n bilangan asli pertama. Nilai n ditentukan dari piranti masukan.
  • 3. Algoritma Contoh 1 output(1) output(2) output(3) output(4) output(5) output(6) output(7) output(8) output(9) output(10)
  • 4. Algoritma Contoh 2 total  6 + 8 + 10 + 12 + 14 + 16 + 18 + 20 + 22 + 24 + 26 + 28 + 30 + 32 + 34 + 36 + 38 + 40 + 42 + 44 output(total)
  • 5. Algoritma Contoh 3 n_a  0 input(karakter) if (karakter = 'a') then n_a  n_a + 1 {dst.... Diulangi sampai 25 kali} output(n_a)
  • 6. Problem • Ada sekumpulan statement yang perlu dilakukan berulang-ulang. • Banyaknya perulangan tergantung dari persoalan – Bagaimana kalau ada 1000 bilangan? – Atau 10000, dst? • Sebuah perulangan dalam algoritma, harus dijamin berhenti. – Sesuai sifat algoritma  harus berhenti
  • 7. Algoritma untuk Contoh 1 i  1 while (i<10) do output(i) i  i + 1
  • 8. Algoritma untuk Contoh 2 bil_genap  6 total  0 while (bil_genap < 45) do total  total + bil_genap bil_genap  bil_genap + 2 output(total) 10/25/2013 Nama Mata Kuliah 8
  • 9. Algoritma untuk Contoh 3 n_a  0 pencacah  1 while (pencacah < 25) do input(karakter) {baca karakter} if(karakter = 'a') then n_a  n_a + 1 pencacah  pencacah + 1 output(n_a)
  • 10. Perulangan • Terdiri dari 2 bagian: – Kondisi berhenti • Kondisi yang mengakibatkan perulangan berhenti • Dinyatakan dalam ekspresi logika • Baik eksplisit maupun implisit – Badan perulangan • Statement-statement yang akan diulang • Pengulangan statement tsb akan dilakukan jika kondisi berhenti belum terpenuhi
  • 11. While-do • Berdasarkan kondisi perulangan • Format Penulisan while <Kondisi-perulangan> do <Statement> • <Statement> akan diulang jika <kondisi-perulangan> terpenuhi (bernilai true) • <Kondisi-perulangan> adalah ekspresi logika
  • 12. Kasus : 1. Menerima 50 data suhu air, kemudian mencetak pesan di layar monitor tentang bentuk air sesuai dengan data suhu yang dimasukkan. 2. Menerima 100 bilangan, kemudian mencetak pesan di layar monitor apakah bilangan yang dimasukkan ganjil/genap. 3. Menerima 100 karakter huruf, kemudian mencetak pesan di layar monitor apakah karakter yang dimasukkan adalah huruf vokal atau bukan.
  • 13. Algoritma untuk Soal 1 i  1 while (i<50) do input(T) if T ≤ 0 then output “air membeku” else if T ≤ 99 then output “air dalam bentuk cair” else output “air menguap” i  i + 1
  • 14. Algoritma untuk Soal 2 i  1 while (i<100) do input(bil) if bil mod 2 = 0 then output “bilangan genap” else output “bilangan ganjil” i  i + 1
  • 15. Algoritma untuk Soal 3 i  1 while (i<100) do input(karakter) if karakter == „A‟ or „U‟ or „I‟ or „E‟ or „O‟ then output “huruf vokal” else output “bukan huruf vokal” i  i + 1
  • 16. Do-While • Berdasarkan kondisi perulangan • Format Penulisan do <Statement> while <Kondisi-perulangan> • <Statement> akan diulang jika <kondisi-perulangan> terpenuhi (bernilai true) • <Kondisi-perulangan> adalah ekspresi logika
  • 17. Algoritma untuk soal 1 (benar?) i  1 do input(T) if T ≤ 0 then output “air membeku” else if T ≥ 1 and T ≤ 99 then output “air dalam bentuk cair” else output “air menguap” while (i ≤ 50 ) do i  i + 1
  • 18. Algoritma untuk soal 2 i  1 do input(bil) if bil mod 2 = 0 then output “bilangan genap” else output “bilangan ganjil” i  i + 1 while (i < 100)
  • 19. Algoritma untuk Contoh 3 i  1 do input(karakter) if karakter == „A‟ or „U‟ or „I‟ or „E‟ or „O‟ then output “huruf vokal” else output “bukan huruf vokal” i  i + 1 while (i < 25)
  • 20. Tugas  Menerima dua buah bilangan bulat antara 1..100. Buatlah algoritma untuk menghitung total penjumlahan bilangan-bilangan ganjil antara 2 bilangan tersebut. • Menggunakan skema: – while – do – Boleh ada percabangan (if-then)
  • 21. Solusi : input (bil_1) input (bil_2) bil_ganjil  bil_1 if (bil_1 mod 2 == 0) then bil_ganjil  bil_ganjil + 1 total  0 while (bil_ganjil < bil_2) do total  total + bil_ganjil bil_ganjil  bil_ganjil + 2 output(total)

No comments:

Post a Comment