Download
masalah dan solusi n.
Skip this Video
Loading SlideShow in 5 Seconds..
MASALAH dan SOLUSI PowerPoint Presentation
Download Presentation
MASALAH dan SOLUSI

MASALAH dan SOLUSI

215 Views Download Presentation
Download Presentation

MASALAH dan SOLUSI

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. MASALAH dan SOLUSI ALGORITMA SOURCE CODE MASALAH HASIL EXECUTABLE CODE RUN Pendahuluan

  2. ALGORITMA • Algoritma • urutan langkah-langkah yang logis utuk memecahkan masalah • Kata algoritma diambil dari nama seorang ilmuwan Persia Abu Ja’far Mohammed Ibn Mûsâ al-Khowârizmî • menulis buku berjudulKitab Al jabr w’al-muqabala (rules of restoration and reduction, pada sekitar tahun 825). Pendahuluan

  3. JENIS PROSES ALGORITMA • Sequence, runut • Langkah kedua dikerjakan setelah mengerjakan langkap pertama • Selection, pemilihan • Jika syarat terpenuhi maka kerjakan proses X • Jika syarat tidak terpenuhi maka kerjakan proses Y • Iteration, pengulangan • Proses dikerjakan berulang kali sampai kondisi tidak memenuhi Pendahuluan

  4. NOTASI ALGORITMA (FLOWCHART) Terminal, mengawali atau mengakhiri rangkaian proses Input/Output, membaca masukan atau menampilkan keluaran Process, mengolah Decision, memeriksa kondisi Connector, menggabung proses Pendahuluan

  5. NOTASI ALGORITMA (FLOWCHART) Start SELECTION PEMILIHAN A Ya B ATAU Ke-1: Proses A Ke-2: Proses B Ke-3: Proses D C Ke-1: Proses A Ke-2: Proses B Ke-3: Proses C Ke-4: Proses D D Stop Pendahuluan

  6. NOTASI ALGORITMA (FLOWCHART) Start SELECTION PEMILIHAN A Ya B C D Ke-1: Proses A Ke-2: Proses B Ke-3: Proses D Ke-4: Proses E Ke-1: Proses A Ke-2: Proses B Ke-3: Proses C Ke-4: Proses E E Stop Pendahuluan

  7. NOTASI ALGORITMA (PSEUDOCODE) input, read, get, key-in Masukan Keluaran print, write, display  Pemberian nilai if <kondisi benar> <proses> else <proses> endif Pemilihan if <kondisi benar> <proses> endif Pendahuluan

  8. POTONGAN HARGA SUSU Toko Indo April memberi potongan harga susu 20%, maksimum 3 kaleng atau kotak. Berapa uang yang harus dibayar pembeli? Masukan ? Keluaran ? Jumlah yang dibeli Harga sekaleng Uang yang harus dibayar Jumlah, Harga Algoritma Bayar Flowchart Pseudodcode Kode Maya Pendahuluan

  9. POTONGAN HARGA SUSU Potongan 20%, maksimum 3. A Start Read HRG, JML Print BYR Stop Ya JML  3 BYR= 3*HRG*0.8 + (JML-3)*HRG BYR= JML*HRG*0.8 A Pendahuluan

  10. POTONGAN HARGA SUSU Potongan 20%, maksimum 3. PSEUDOCODE input harga, jumlah if jumlah <= 3 bayar  jumlah * harga * 0.8 else bayar  (3 * harga * 0.8) + (jumlah – 3) * harga endif printbayar Pendahuluan

  11. POTONGAN HARGA SUSU Potongan 20%, maksimum 3. KODE MAYA baca harga, jumlah jika jumlah <= 3 bayar  jumlah * harga * 0.8 selain itu bayar  (3 * harga * 0.8) + (jumlah – 3) * harga akhir jika cetak bayar Pendahuluan

  12. SYARAT ALGORITMA • Finiteness • Algoritma harus berakhir, terminate, halt • Definiteness • Langkah algoritma harus didefinisikan dengan tepat dan tidak ambiguous • Input • Algoritma memerlukan masukan untuk diolah • Output • Algoritma memberi hasil keluaran • Effectiveness • Langkah algoritma dikerjakan dalam waktu yang wajar Pendahuluan

  13. PEMECAHAN MASALAH • Definisi masalah • Membuat model • Merancang algoritma • Menulis program • Kompilasi program • Run dan hasil • Dokumentasi Pendahuluan

  14. SIKLUS PEMECAHAN MASALAH DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGO TULIS PROGRAM COMPILE Y S.Err RUN Y O.Err DOKU-MENTASI Pendahuluan

  15. SIKLUS PEMECAHAN MASALAH MASALAH Berapa besarnya biaya untuk memasang keramik pada suatu kamar belajar? DATA YANG DIPERLUKAN Bentuk ruangan ? Ukuran ruangan ? Ukuran keramik ? Harga keramik ? Upah kerja ? Persegi panjang pj ruang dan lb ruang pj krmik dan lb krmik harga perbox, keping perbox upah permeter Pendahuluan

  16. SIKLUS PEMECAHAN MASALAH MODEL PERHITUNGAN hitung kebutuhan keramik hitung upah kerja total biaya = biaya krmik + upah kerja Pendahuluan

  17. SIKLUS PEMECAHAN MASALAH get pj_ruang, lb_ruang get pj_krmik, lb_krmik get harga_perbox, keping_perbox get upah_permeter krmik_sisi_pj  pj_ruang \ pj_krmik krmik_sisi_lb  lb_ruang \ lb_krmik jml_krmik  krmik_sisi_pj * krmik_sisi_lbr jml_cadang  5% * jml_krmik total_krmik  jumlah_krmik + jumlah_cadang biaya_krmik  total_krmik \ keping_perbox * harga_perbox biaya_upah  pj_ruang * lb_ruang / upah_permeter total_biaya  biaya_krmik + biaya_upah print total_biaya masukan proses keluaran Pendahuluan

  18. SIKLUS PEMECAHAN MASALAH # include <stdio.h> void main() { int pj_ruang, lb_ruang, pj_krmik, lb_krmik, keping; float harga, upah, bea_krmik, bea_upah; int sisi_pj, sisi_lb, butuh; scanf("%d %d", &pj_ruang, &lb_ruang); scanf("%d %d", &pj_krmik, &lb_krmik); scanf("%f %d %f", &harga, &keping, &upah); sisi_pj = ceil(pj_ruang / pj_krmik); sisi_lb = ceil(lb_ruang / lb_krmik); butuh = ceil (sisi_pj * sisi_lb * 1.05); bea_krmik = butuh / keping * harga; bea_upah = pj_ruang * lb_ruang * upah / 10000; printf("bea keramik = %.0f \n", bea_krmik); printf("bea upah = %.0f \n", bea_upah); printf("total bea = %.0f", bea_krmik + bea_upah); } Pendahuluan

  19. SIKLUS PEMECAHAN MASALAH # include <stdio.h> void main() { int pj_ruang, lb_ruang, pj_krmik, lb_krmik, keping; float harga, upah, bea_krmik, bea_upah; int sisi_pj, sisi_lb, butuh; scanf("%d %d", &pj_ruang, &lb_ruang); scanf("%d %d", &pj_krmik, &lb_krmik); scanf("%f %d %f", &harga, &keping, &upah); sisi_pj = ceil(pj_ruang / pj_krmik); sisi_lb = ceil(lb_ruang / lb_krmik); butuh = ceil (sisi_pj * sisi_lb * 1.05); bea_krmik = butuh / keping * harga; bea_upah = pj_ruang * lb_ruang * upah / 10000; printf("bea keramik = %.0f \n", bea_krmik); printf("bea upah = %.0f \n", bea_upah); printf("total bea = %.0f", bea_krmik + bea_upah); } ERROR Function ‘ceil’ should have a prototype Pendahuluan

  20. SIKLUS PEMECAHAN MASALAH # include <stdio.h> # include <math.h> void main() { int pj_ruang, lb_ruang, pj_krmik, lb_krmik, keping; float harga, upah, bea_krmik, bea_upah; int sisi_pj, sisi_lb, butuh; scanf("%d %d", &pj_ruang, &lb_ruang); scanf("%d %d", &pj_krmik, &lb_krmik); scanf("%f %d %f", &harga, &keping, &upah); sisi_pj = ceil(pj_ruang / pj_krmik); sisi_lb = ceil(lb_ruang / lb_krmik); butuh = ceil (sisi_pj * sisi_lb * 1.05); bea_krmik = butuh / keping * harga; bea_upah = pj_ruang * lb_ruang * upah / 10000; printf("bea keramik = %.0f \n", bea_krmik); printf("bea upah = %.0f \n", bea_upah); printf("total bea = %.0f", bea_krmik + bea_upah); } tambahkan Success Pendahuluan

  21. SIKLUS PEMECAHAN MASALAH 200 320 30 30 50000 5 75000 bea keramik = 600000 bea upah = -11520 total bea = 588480 Pendahuluan

  22. SIKLUS PEMECAHAN MASALAH # include <stdio.h> # include <math.h> void main() { float pj_ruang, lb_ruang, pj_krmik, lb_krmik; float harga, keping, upah; float sisi_pj, sisi_lb, butuh, bea_krmik, bea_upah; scanf("%f %f", &pj_ruang, &lb_ruang); scanf("%f %f", &pj_krmik, &lb_krmik); scanf("%f %f %f", &harga, &keping, &upah); sisi_pj = ceil(pj_ruang / pj_krmik); sisi_lb = ceil(lb_ruang / lb_krmik); butuh = ceil (sisi_pj * sisi_lb * 1.05); bea_krmik = ceil(butuh / keping) * harga; bea_upah = pj_ruang * lb_ruang * upah / 10000; printf("bea keramik = %.0f \n", bea_krmik); printf("bea upah = %.0f \n", bea_upah); printf("total bea = %.0f", bea_krmik + bea_upah); } Success Pendahuluan

  23. SIKLUS PEMECAHAN MASALAH 200 320 30 30 50000 5 75000 bea keramik = 850000 bea upah = 480000 total bea = 1330000 100 100 20 20 10000 10 50000 bea keramik = 30000 bea upah = 50000 total bea = 80000 Pendahuluan

  24. SIKLUS PEMECAHAN MASALAH Pendahuluan