1 / 21

BAB I DASAR-DASAR ALGORITMA

BAB I DASAR-DASAR ALGORITMA. ALGORITMA. An algorithm is “a precise rule (or set of rules) specifying how to solve some problem.” (thefreedictionary.com) Muhammad al-Khwarizmi

Download Presentation

BAB I DASAR-DASAR ALGORITMA

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 IDASAR-DASAR ALGORITMA

  2. ALGORITMA • An algorithm is “a precise rule (or set of rules) specifying how to solve some problem.” (thefreedictionary.com) • Muhammad al-Khwarizmi Arab mathematician of the court of Mamun in Baghdad in the 9th century…the word algorithm is said to have been derived from his name. Much of the mathematical knowledge of medieval Europe (algebra) was derived from Latin translations of his works. (encyclopedia.com) • • The study of algorithms is one of the key foundations of computer science.

  3. FIRST ALGORITHM • Perhatikanpseudocodeberikutini (1) Input x (2) Input y (3) While x  0 do (a) b= x modulo y (b) set x= y (c) set y = b (d) kembalikelangkah 3 (4) Output x Jikanilai x = 114, dan y = 54, berapaoutputnya?

  4. PENYAJIAN ALGORITMA • Kata-kata • Pseudocode • Flowchart

  5. Algoritmadikehidupansehari-hari • Tuliskanresepmembuatnasigoreng! • Tuliskanlangkah-langkahmerakitkompor gas! • Tuliskanlangkah-langkahmenginstall Windows XP. • Tuliskanlangkah-langkahmenyelesaikanSistemPersamaan Linear duapeubah a1x + b1 y =c1dan a2x + b2y =c2 • Tuliskanlangkah-langkahmembuahgrafik y = f(x)

  6. Algoritmaadalahsuatufungsi

  7. Apa yang diperlukanolehAlgoritma? • SPESIFIKASI INPUT • Agar bisadijalankansebuahalgoritmamemerlukanspesifikasi input yang jelas • Contoh: • Membuatresepmakanan : • Installasi software : • Menjahitbaju : • Spesifikasi input dalamalgoritmakomputer • Jenis data apa yang diperlukan • Berapabanyak data yang diperlukan • Dari mana data tersebutdiinputkan (bentuk form, atau yang lain)

  8. Apa yang diperlukanolehAlgoritma? • PROCESS • Selain input, algoritmamemerlukanlangkah-langkah yang jelasdantepatuntukmenyatakanbagaimnamelakukanoperasiuntukmendapatkan output yang diinginkan menyatakanprosesdalamalgoritma • Algoritmamenyatkankumpulan operas-operasidasar yang diasumsikandimengertioleheksekutoralgoritma • Resepmakanan: haluskan, goreng, rebus, tiriskan, … • Komputasi: add, multiply, modulo, div, output, …

  9. Apa yang diperlukanolehAlgoritma? • SPESIFIKASI OUTPUT • Hasilapa yang diperlukan • Bagaimanapenyajian output • Apa yang terjadidengan output jikaiput error

  10. BagaimnamembuatAlgoritmabaik? • Harusmenghasilkan output yang benaruntuk input yang legal • Sebisamungkinmengeksekusisecaraefisiendenganjumlahlangkahseminimalmungkin • Sebisamungkindidesainsedemikianrupasehinggaorang lain mampumemahamidanmemodifikasiuntukkeperluanlebihlanjut

  11. ContohAlgoritma • Misalkandiberikanalgoritmaberikut (1) Input: n (2) Input : Array A[1], A[2], …A[n] of integer (3) Set i=2 (4) Set m = A[1] (5) While i<=n do (a) if A[i] <m then set m=A[i] (b) Set i=i+1 (6) Output m Jikadiberikan n = 5 dan A=[4, 7, 3, 5, 9, 8]

  12. MelacakAlgoritma • Nilaiawali=2, m=4. • Berikutnyaada looping yang harusdicek (1) Input: n=5 (2) Input : • A=[4, 7, 3, 5, 9, 8] (3) Set i=2 (4) Set m = A[1] (5) While i<=n do (a) if A[i] <m then set m=A[i] (b) Set i=i+1 (6) Output m

  13. ContohAlgoritma 2 1. Input : n 2. Input : array A[1], A[2], …, A[n] of integer 3. For i=1 to n do 4. for j=1 to n-1 do 5. If A[j] > A[j+1], exchange A[j] and A[j+1] 6. Output A Jika n = 5 dan A = [8,4,9,3,7], tentukan output nya

  14. ContohAlgoritma 3 • Apakahhasildarialgoritmadiatas? • Apakahpadalangkah 3 perlumelakukan n kali perulangan? • Apakahpadalangkah 4 perlu n-1 perulangan • Cobalakukanalgoritmainiuntuk input yang sama 1. Input : n 2. Input : array A[1], A[2], …, A[n] of integer 3. For i=1 to n-1 do for j=1 to n-i do If A[j] > A[j+1], exchange A[j] and A[j+1] 4. Output A

  15. Effisiensialgoritma • Hitunglahpadaalgoritma 2 dan 3 adaberapa kali pengecekan if .. Then … • Apakesimpulanmu?

  16. LATIHAN BuatAlgoritmadengankata-katauntukbeberapamasalahberikut • Menentukanjenissegitigaberdasarkanpanjangsisi a, b, dan c (lancip, tumpul, siku-siku) • Menentukan KPK dariduabilangan integer x dany • Menentukanpersamaangarissinggung y=f(x) dititik (x,y) • Menentukanapakahsebuahbilangan prima ataubukan • MencarinilaiPn(x) dengan input : n, koefisien A[1..n] dannilai x dan output hasilnya

  17. Aturanpenulisanalgoritmadenganpseudocode) ALGORITMA Mencari Max //keterangantujuanalgoritma //keterangan input //keterangan output (1) Input: n (2) Input: array A[1], A[2], ..A[n] of integer (3) Process… (4) Process… … (11) Output max

  18. Aturanpenulisanalgoritmadenganpseudocode) • SINTAX: • If …then …else … If (kondisi) then pernyataan 1 else pernyataan 2 • ATAU If (kondisi) then pernyataan 1 pernyataan 2 …. else pernyataan 1 pernyataan 2

  19. Aturanpenulisanalgoritmadenganpseudocode) • SINTAX FOR … TO … DO For i=nilaiawal to nilaiakhir do pernyataan 1 pernyataan 2 …. pernytaan n

  20. AturanPenulisanAlgoritma • SINTAX WHILE… DO … While (kondisi) do pernyataan 1 pernyataan 2 …. pernytaan n

  21. LATIHAN • Tuliskanalgoritmaberikutdalam pseudo code • Menentukanjenissegitigaberdasarkanpanjangsisi a, b, dan c (lancip, tumpulsiku-siku) • Menentukan KPK dariduabilangan integer x dan y • Menentukanpersamaangarissinggung y=f(x) dititik (x,y) • Menentukanapakahsebuahbilangan prima ataubukan • MencarinilaiPn(x) dengan input : n, koefisien A[1..n] dannilai x dan output hasilnya • Mencarisolusi SPL duavariabeldengan input koefisien-koefisienpersamaan linear, output adalah x dan y

More Related