MASALAH dan SOLUSI ALGORITMA SOURCE CODE MASALAH HASIL
- Slides: 22
MASALAH dan SOLUSI ALGORITMA SOURCE CODE MASALAH HASIL EXECUTABLE CODE RUN ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 0
ALGORITMA ¡ Algoritma l ¡ 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î l menulis buku berjudul Kitab Al jabr w’almuqabala (rules of restoration and reduction, pada sekitar tahun 825). ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 1
JENIS PROSES ALGORITMA ¡ Sequence, runut l ¡ Selection, pemilihan l l ¡ Langkah kedua dikerjakan setelah mengerjakan langkap pertama Jika syarat terpenuhi maka kerjakan proses X Jika syarat tidak terpenuhi maka kerjakan proses Y Iteration, pengulangan l Proses dikerjakan berulang kali sampai kondisi tidak memenuhi ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 2
NOTASI ALGORITMA (FLOWCHART) Terminal, mengawali atau mengakhiri rangkaian proses Input/Output, membaca masukan atau menampilkan keluaran Process, mengolah Decision, memeriksa kondisi Connector, menggabung proses ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 3
NOTASI ALGORITMA (FLOWCHART) Start SEQUENCE RUNUT A Langkah ke-1: Proses A B Langkah ke-2: Proses B C Langkah ke-3: Proses C D Langkah ke-4: Proses D Stop ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 4
MENGECAT DINDING Toko Indo April mau mengecat dinding kedua sisi, 12 m 2 perlu sekaleng cat. Berapa kaleng cat diperlukan? Masukan ? Keluaran ? Panjang dinding Tinggi dinding Jumlah kaleng cat Pj 1, Tg 1, Pj 2, Tg 2 Algoritma Kaleng Flowchart Pseudodcode Kode Maya ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 5
MENGECAT DINDING 12 m 2 perlu sekaleng cat. Start A Read Pj 1, Tg 1, Pj 2, Tg 2 Klg= Ls / 12 Ls= Pj 1*Tg 1 + Pj 2*Tg 2 Print Klg A ALGORITMA dan STRUKTUR DATA: Bahasa C Stop Pendahuluan 6
MENGECAT DINDING 12 m 2 perlu sekaleng cat. PSEUDOCODE read panjang 1, tinggi 1, panjang 2, tinggi 2 luas panjang 1 * tinggi 1 + panjang 2 * tinggi 2 kaleng luas / 12 print kaleng ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 7
MENGECAT DINDING 12 m 2 perlu sekaleng cat. KODE MAYA baca panjang 1, tinggi 1, panjang 2, tinggi 2 luas panjang 1 * tinggi 1 + panjang 2 * tinggi 2 kaleng luas / 12 cetak kaleng ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 8
SYARAT ALGORITMA 1. Finiteness l 2. Definiteness l 3. Algoritma memerlukan masukan untuk diolah Output l 5. Langkah algoritma harus didefinisikan dengan tepat dan tidak ambiguous Input l 4. Algoritma harus berakhir, terminate, halt Algoritma memberi hasil keluaran Effectiveness l Langkah algoritma dikerjakan dalam waktu yang wajar ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 9
PEMECAHAN MASALAH A. B. C. D. E. F. G. Definisi masalah Membuat model Merancang algoritma Menulis program Kompilasi program Run dan hasil Dokumentasi ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 10
SIKLUS PEMECAHAN MASALAH DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGO TULIS PROGRAM COMPILE Y S. Err RUN Y ALGORITMA dan STRUKTUR DATA: Bahasa C O. Err DOKUMENTASI Pendahuluan 11
SIKLUS PEMECAHAN MASALAH Berapa besarnya biaya untuk memasang keramik pada suatu kamar belajar? DATA YANG DIPERLUKAN Persegi panjang Bentuk ruangan ? pj ruang dan lb ruang Ukuran ruangan ? pj krmik dan lb krmik Ukuran keramik ? harga perbox, keping perbox Harga keramik ? upah permeter Upah kerja ? ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 12
SIKLUS PEMECAHAN MASALAH MODEL PERHITUNGAN hitung kebutuhan keramik hitung upah kerja total biaya = biaya krmik + upah kerja ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 13
SIKLUS PEMECAHAN MASALAH get pj_ruang, lb_ruang masukan get pj_krmik, lb_krmik get harga_perbox, keping_perbox get upah_permeter krmik_sisi_pj pj_ruang pj_krmik proses 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 keluaran ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 14
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 = %. 0 f n", bea_krmik); printf("bea upah = %. 0 f n", bea_upah); printf("total bea = %. 0 f", bea_krmik + bea_upah); } ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 15
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); ERROR 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 = %. 0 f n", bea_krmik); printf("bea upah = %. 0 f n", bea_upah); printf("total bea = %. 0 f", bea_krmik + bea_upah); } Function ‘ceil’ should have a prototype ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 16
SIKLUS PEMECAHAN MASALAH # include <stdio. h> # include <math. h> tambahkan 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 = %. 0 f n", bea_krmik); printf("bea upah = %. 0 f n", bea_upah); printf("total bea = %. 0 f", bea_krmik + bea_upah); } Success ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 17
SIKLUS PEMECAHAN MASALAH 200 320 30 30 50000 5 75000 bea keramik = 600000 bea upah = -11520 total bea = 588480 ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 18
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 = %. 0 f n", bea_krmik); printf("bea upah = %. 0 f n", bea_upah); printf("total bea = %. 0 f", bea_krmik + bea_upah); } Success ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 19
SIKLUS PEMECAHAN MASALAH 200 320 30 30 50000 5 75000 bea keramik = 850000 bea upah = 480000 total bea = 1330000 100 20 20 10000 10 50000 bea keramik = 30000 bea upah = 50000 total bea = 80000 ALGORITMA dan STRUKTUR DATA: Bahasa C Pendahuluan 20
SIKLUS PEMECAHAN MASALAH O O O O O // menghitung biaya pemasangan keramik # 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 = %. 0 f n", bea_krmik); printf("bea upah = %. 0 f n", bea_upah); printf("total bea = %. 0 f", bea_krmik + bea_upah); } ALGORITMA dan STRUKTUR DATA: Bahasa C O O O O O Pendahuluan 21
- Contoh analisis pohon
- Metode analisis akar masalah dan solusi
- Merumuskan solusi masalah
- Merumuskan solusi masalah
- Difference between source code and machine code
- Urutan algoritma yang benar dalam mengirim surat adalah …
- Makalah penentuan prioritas masalah kesehatan
- Busceral
- Solusi it bisnis
- Metode newton raphson
- Syukur sebagai solusi hidup
- Ruang solusi diorganisasikan ke dalam
- Solusi umum dari persamaan diferensial
- Solusi optimum adalah
- Substitusi balik
- Contoh soal persamaan non linear
- Divergenr
- Solusi sistem persamaan linear
- Solusi covid
- Urutan penyelesaian masalah adalah algoritma
- Contoh soal algoritma greedy dan penyelesaiannya
- Membina pernyataan masalah
- Masalah-masalah khusus dalam penyusunan laporan arus kas