Struktur Dasar Algoritma

Slides:



Advertisements
Presentasi serupa
DASAR-DASAR ALGORITMA
Advertisements

Pengertian Dasar Logika dan Algoritma
PENDAHULUAN KONSEP ALGORITMA DAN DIAGRAM ALIR (FLOWCHART)
Introduction to Algorithm evaluation Soal Matrikulasi Buka Buku
DASAR-DASAR ALGORITMA
Pemrograman Dasar Pengantar Algoritma - 2 PTIIK - UB.
Pemrograman Dasar Pengantar Algoritma PTIIK - UB.
TEORI ALGORITMA.
STRUKTUR DASAR ALGORITMA
ALGORITMA Algoritma urutan langkah-langkah yang logis utuk memecahkan masalah Kata algoritma diambil dari nama seorang ilmuwan Persia Abu Ja’far Mohammed.
PERTEMUAN I PENGERTIAN DASAR LOGIKA DAN ALGORITMA ~
Rancangan Program Materi Pertemuan 13 Sumber : Slide Inayatullah,M.Si.
Algoritma Asal kata Algoritma (algorism -algorithm) berasal dari nama Abu Ja’far Muhammad ibn Musa Al-Khuwarizmi Ilmuwan Persia yang menulis kitab “al.
Pengertian Algoritma Sebuah algoritma merupakan deskripsi pelaksanaan suatu proses, dimana algoritma disusun oleh sederetan langkah instruksi yang logis.
Algoritma Dasar Dalam membuat suatu program komputer, menyusun algoritma adalah langkah pertama yang harus dilakukan Dalam membuat algoritma dapat digunakan.
Algoritma dan Struktur Data
Flowchart dan Pseudocode
LOGIKA ALGORITMA Pertemuan 6.
RANCANGAN PROGRAM.
Dasar Pemrograman Komputer
Dasar Pemrograman Komputer [TKL-4002 ] Pertemuan 01.
Pengantar Algoritma dan pemograman
Algoritma?!? Flowchart ?!?# DASAR PEMROGRAMAN.
Algoritma dan Pemrograman
PERTEMUAN 2 PENGERTIAN DASAR LOGIKA DAN ALGORITMA.
Kasus Buat algoritma untuk menghitung total pembayaran dari proses pembelian.
Pertemuan Pengembangan Algoritma
Pengantar Algoritma.
Algoritma Pseudocode TEE 2103 Algoritma dan Pemrograman
PENGERTIAN DASAR ALGORITMA & FLOWCHART
Mahasiswa diharapkan dapat:
ALGORITMA & PEMROGRAMAN I-A
PERTEMUAN 1 Algoritma & Pemrograman
DASAR PEMROGRAMAN & ALGORITMA
Pendahuluan Algoritma dan Pemrograman I-A
STRUKTUR DASAR ALGORITMA
STMIK Kadiri 2015 D3 – Semester Ganjil
Konsep Pemrograman 3
Penulisan Algoritma dan Flowchart
ALGORITMA PEMEROGRAMAN
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
Algoritma.
STRUKTUR DASAR ALGORITMA
Algoritma merupakan pondasi yang harus dikuasai mahasiswa yang ingin menyelesaikan masalah secara terstruktur, efektif, dan efisien, khususnya untuk.
MODUL 3 PSEUDOCODE.
Start.
ALGORITMA & LOGIKA PEMROGRAMAN
STRUKTUR DASAR ALGORITMA
Ucu Nugraha, ST. Algoritma.
Flowchart.
TEL 2112 Dasar Komputer & Pemograman Penyeleksian
Metode Perancangan Program
Algoritma dan Pemrograman Pertemuan 1
Struktur Algoritma Sequence Process: instruksi dikerjakan secara sekuensial, berurutan. Selection Process: instruksi dikerjakan jika memenuhi kriteria.
Pseudo-code.
minggu ke-2 Imam Fahrur Rozi
Definisi Algoritma Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah. Yang ditekankan adalah urutan langkah logis, yang berarti.
Algoritma dan Sequence
JENIS DAN SIMBOL FLOWCHART PRODI MIK | FAKULTAS ILMU-ILMU KESEHATAN
Bahasa Pemrograman Poltek Balikpapan 2010.
MASALAH dan SOLUSI ALGORITMA SOURCE CODE MASALAH HASIL EXECUTABLE CODE
Bab 08 Menghitung Total Data yang Diinput Dari Keyboard
DASAR-DASAR ALGORITMA dan FLOW CHART
TEORI ALGORITMA.
STRUKTUR DASAR ALGORITMA
IT234 ALGORITMA DAN STRUKTUR DATA
ANALISIS ALGORITMA Hoiriyah, S.Kom., M.Kom.. Analisis dan Algoritma.
PEMROGRAMAN DASAR 3.1 & 4.1 KONSEP, STRUKTUR, PENULISAN ALGORITMA DHARU WIHARTASIH, S.PD SMK PALAPA SEMARANG.
FONDASI PEMROGRAMAN & STRUKTUR DATA #2 - 2
Konsep Algoritma Pemrograman
Transcript presentasi:

Struktur Dasar Algoritma

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

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 berjudul Kitab Al jabr w’al-muqabala (rules of restoration and reduction, pada sekitar tahun 825). Pendahuluan

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

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

NOTASI ALGORITMA (FLOWCHART) Start A Langkah ke-1: Proses A B Langkah ke-2: Proses B SEQUENCE RUNUT C Langkah ke-3: Proses C D Langkah ke-4: Proses D Stop Pendahuluan

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

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

NOTASI ALGORITMA (FLOWCHART) Start ITERATION PENGULANGAN A Ke-1: Proses A Ke-2: Proses B Ke-3: Proses C Ke-4: Proses B Ke-5: Proses C … Ke-n-1: Proses B Ke-n: Proses D C B Ya D Stop Pendahuluan

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

NOTASI ALGORITMA (PSEUDOCODE) for <kondisi benar> <proses> endfor PENGULANGAN while <kondisi benar> <proses> endwhile do <kondisi benar> <proses> while <kondisi benar> repeat <proses> until <kondisi benar> Pendahuluan

NOTASI ALGORITMA (KODE MAYA) isi, baca, masukkan, ketik, baca file Masukan Keluaran tulis, cetak, tampil , rekam Pemberian nilai  Pemilihan Pengulangan jika <kondisi benar> <proses> selain itu akhir jika ulangi selama <kondisi benar> <proses> akhir pengulangan ulangi <proses> sampai <kondisi benar> jika <kondisi benar> <proses> akhir jika Pendahuluan

MENGECAT DINDING Toko Indo April mau mengecat dinding kedua sisi, 12m2 perlu sekaleng cat. Berapa kaleng cat diperlukan? Masukan ? Keluaran ? Panjang dinding Tinggi dinding Jumlah kaleng cat Pj1, Tg1, Pj2, Tg2 Algoritma Kaleng Flowchart Pseudodcode Kode Maya Pendahuluan

MENGECAT DINDING 12m2 perlu sekaleng cat. Start A Read Pj1, Tg1, Klg= Ls / 12 Ls= Pj1*Tg1 + Pj2*Tg2 Print Klg Stop A Pendahuluan

MENGECAT DINDING 12m2 perlu sekaleng cat. PSEUDOCODE read panjang1, tinggi1, panjang2, tinggi2 luas  panjang1 * tinggi1 + panjang2 * tinggi2 kaleng  luas / 12 print kaleng Pendahuluan

MENGECAT DINDING 12m2 perlu sekaleng cat. KODE MAYA baca panjang1, tinggi1, panjang2, tinggi2 luas  panjang1 * tinggi1 + panjang2 * tinggi2 kaleng  luas / 12 cetak kaleng Pendahuluan

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

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

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 print bayar Pendahuluan

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

SYARAT ALGORITMA Finiteness Definiteness Input Output Effectiveness 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

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

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

SIKLUS PEMECAHAN 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

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

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

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

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

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

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

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

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

SIKLUS PEMECAHAN MASALAH 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 = %.0f \n", bea_krmik); printf("bea upah = %.0f \n", bea_upah); printf("total bea = %.0f", bea_krmik + bea_upah); } Pendahuluan

Terima kasih Pendahuluan