1 / 40

Bab 2 Struktur Dasar

Bab 2 Struktur Dasar. Pendahuluan. Sebelum membuat program: Harus memahami masalah yang dihadapi Membuat perencanaan yang baik (Algoritma) untuk menyelesaikannya. Algoritma. Permasalahan komputasi : Dapat diselesaikan dengan mejalankan sekumpulan kegiatan dalam urutan tertentu.

Télécharger la présentation

Bab 2 Struktur Dasar

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bab 2 StrukturDasar

  2. Pendahuluan • Sebelum membuat program: • Harus memahami masalah yang dihadapi • Membuat perencanaan yang baik (Algoritma) untuk menyelesaikannya.

  3. Algoritma • Permasalahan komputasi : • Dapat diselesaikan dengan mejalankan sekumpulan kegiatan dalam urutan tertentu. • Pengendalian Program • Urutan tertentu dalam bentuk pernyataan (statement) untuk dijalankan.

  4. Pseudocode • Pseudocode • Bahasa buatan yang tidak formal dimana dapat membantu untuk mengembangkan algoritma • Dapat menggunakan bahasa sehari-hari • Tidak dapat dijalankan dengan komputer • Membantu ‘membuat’ program sebelum membuat codingnya. • Mudah untuk diterjemahkan ke dalam bentuk bahasa pemrograman

  5. Perintah Dasar • Perintah: • Menyatakan algoritma • Alur pemecahan masalah • Mudah diimplementasi dengan bahasa pemrograman

  6. Perintah Dasar • Perintah: • Singkat, jelas, terstruktur, fleksibel • Konsep pengolahan data berbasis Komputer

  7. Perintah Dasar Perintah-perintah dasar yang dapat digunakan pada pseudocode Perintah Lambang penulisan tulis/printf/write pembacaan baca/scanf/read pemuatan (assignment) = pengulangan while-do-ewhile pencabangan if-then-else-eif

  8. Struktur Dasar • Struktur Dasar pada pemrograman adalah sebagai berikut : • Struktur berurut • Struktur seleksi (pencabangan / pemilihan) • Struktur pengulangan

  9. Proses A Proses B Proses C Struktur Pengendali • Eksekusi urutan/pernyataan tidak bersyarat

  10. Struktur Pengendali • Pengalihan pengendalian • Bila perintah yang dijalankan adalah bukan perintah berikutnya dalam urutan program • Hindari perintah ‘goto’  menimbulkan banyak masalah

  11. Struktur Pengendali • Bohm dan Jacopini • Seluruh program dapat ditulis dalam 3 struktur pengendali : • Struktur berurut • Struktur seleksi / percabangan: if, if…else, and switch • Struktur pengulangan: while, do…while and for

  12. PERCABANGAN • Tidak setiap baris program akan dikerjakan • Hanya yang memenuhi syarat (kondisi) • Syarat terdiri dari operand-operand, yang dihubungkan dengan operator relasi dan operator logika

  13. PERCABANGAN • Menghasilkan pernyataan Boolean, yang dapat bernilai benar (true) atau salah (false) • Menggunakan perintah : • if • else-if • switch

  14. Pernyataan Seleksi if • Struktur Seleksi • Digunakan untuk memilih alur alternatif • Pseudocode: If nilai mahasiswa lebih besar dari 60 Print “lulus”

  15. Pernyataan seleksi if • Jika kondisi true (benar) • Pernyataan Print dijalankan dan program akan meneruskan ke perintah berikutnya. • Jika false, pernyataan print diabaikan dan menjalankan perintah berikutnya.

  16. Pernyataan seleksi if • Pseudocode statement denganbahasa C: if ( grade >= 60 ) printf( "Passed\n" ); • SimbolBerlian (decision symbol) • Digunakanuntukseleksi • Hasilnya: benaratausalah • Mengujikondisidanmengikutijalur yang tepat.

  17. Struktur Seleksi Apakah Nilai >= 60 ? Cetak ‘LULUS’ YA TIDAK

  18. Pernyataan if…else • if • Hanya melaksanakan aksi bila kondisinya adalah benar/true • if…else • Melaksanakan suatu aksi untuk kedua kondisi, baik benar/true atau salah/false • Psuedocode: If nilai siswa lebih besar atau sama dengan 60Cetak “Lulus” elseCetak“Gagal”

  19. Pernyataan if…else • Code C: if ( nilai >= 60 ) printf( “Lulus\n"); else printf( “Gagal\n");

  20. Flowchart Apakah Nilai >= 60 ? Cetak ‘Gagal’ TIDAK YA Cetak ‘LULUS’

  21. Pernyataan if…else • Pernyataan if…else nested / bersarang • Pernyataan if…else didalam pernyataan if…else • Satu kondisi terpenuhi, yang lain diskip

  22. Pernyataan if…else • Pseudocode If student’s grade is greater than or equal to 90 Print “A”else If student’s grade is greater than or equal to 80 Print “B” else If student’s grade is greater than or equal to 70 Print “C” else If student’s grade is greater than or equal to 60 Print “D” else Print “F”

  23. Pernyataan if…else • Syntax errors • Caught by compiler • Logic errors: • Have their effect at execution time • Non-fatal: program runs, but has incorrect output • Fatal: program exits prematurely

  24. Contoh 1 START • Contoh : • 5 == 5  True • 3 > 5  False • 5 <> 3  True • (A>5) AND (B>10)  • True jika keduanya benar • (A>5) OR (B>10)  • True jika keduanya atau salah satu benar Syarat Perintah 1 Perintah 2 END

  25. Contoh 2 • Contoh “Harga Mutlak Bilangan“ • Tujuan : menentukan harga mutlak setiap bilangan yang dimasukkan lewat keyboard (akhirdata = 0) • bagan alir perintah percabangan : • if-else-eif

  26. Contoh 2 tidak bil > 0 ya mutlak = - bil mutlak = bil

  27. Contoh 2 • Algoritmanya baca(bil) if bil > 0 then mutlak = bil else mutlak = -bil eif tulis (mutlak) {peragakan harga mutlak tersebut}

  28. Contoh 3 Contoh “Bilangan genap dan ganjil” • Tujuan : membuat algoritma yang dapat menyatakan suatu bilangan adalah genap atau ganjil • Akhir data dinyatakan dengan nilai “0”

  29. Contoh 3 • Langkah-langkahnya • menentukan suatu bilangan genap atau ganjil dengan membagi bilangan dengan bilangan 2 (mod) • Sisa pembagian nol  bilangan genap • jika tidak nol  bilangan ganjil

  30. Contoh 3 • Algoritmanya akhirData = 0 Baca (bil) while bil <> akhirData do sisa =bil mod 2 if sisa == 0 then write (‘genap’) else write (‘ganjil’) eif baca (bil) ewhile

  31. Contoh 4 Contoh kasus “Persamaan Kuadrat” • Tujuan : membuat algoritma program menghitung akar-akar persamaan kuadrat yang koefisiennya dimasukkan melalui keyboard

  32. Contoh 4 • Langkah-langkahnya • menyeleksi kondisi salah dengan memeriksa nilai koefisien • menentukan jenis akar persamaan berdasarkan koefisien

  33. Contoh 4 Algoritma: baca (a) while a<>0 do baca (b,c) d=b^2-4*a*c continue

  34. Contoh 4 if d<0 then {hitung akar kompleks} p= -b/(2*a) q = abs (sqr(-d)/((2*a)) tulis (‘x1=‘, p, ‘+’, q, ‘i’) tulis (‘x2=‘, p, ‘-’, q, ‘i’) else continue

  35. Contoh 4 {akar komplek atau tidak} if d=0 then {hitung akar kembar} x1 = -b/(2*a) x2 = x1

  36. Contoh 4 else {hitung akar tidak kembar} x1 = (-b+sqr(d))/(2*a) x2 = (-b-sqr(d))/(2*a) eif tulis (‘x1=‘, x1) tulis (‘x2=‘,x2) eif Baca (a)

  37. Contoh 5 • Menentukan apakah kedua buah bilangan yang diinput sama, lebih kecil atau lebih besar

  38. Tugas Kelompok  C program (DevC++) • Kel 1 – 3  contoh 1 • Kel 4 – 6  contoh 2 • Kel 7 – 9  contoh 3 • Kel 10 – 12  contoh 4 • Kel 13 – 14  contoh 5

  39. Dev C++ • Jangan lupa save program dalam .C • Supaya window bisa freeze dan terlihat hasilnya sebelum ertutup otomatis, tambahkan: • System(“pause”); • Sebelum Return 0; }

  40. SELESAI BAB 2-a

More Related