Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehDhewy Nurjanah Telah diubah "9 tahun yang lalu
1
BAB I DASAR-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 Perhatikan pseudocode berikut ini (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) kembali ke langkah 3 (4) Output x Jika nilai x = 114, dan y = 54, berapa outputnya?
4
PENYAJIAN ALGORITMA Kata-kata Pseudocode Flowchart
5
A LGORITMA DI KEHIDUPAN SEHARI - HARI Tuliskan resep membuat nasi goreng! Tuliskan langkah-langkah merakit kompor gas! Tuliskan langkah-langkah menginstall Windows XP. Tuliskan langkah-langkah menyelesaikan Sistem Persamaan Linear dua peubah a 1 x + b 1 y =c 1 dan a 2 x + b 2 y =c 2 Tuliskan langkah-langkah membuah grafik y = f(x)
6
A LGORITMA ADALAH SUATU FUNGSI
7
A PA YANG DIPERLUKAN OLEH A LGORITMA ? SPESIFIKASI INPUT Agar bisa dijalankan sebuah algoritma memerlukan spesifikasi input yang jelas Contoh: Membuat resep makanan : Installasi software : Menjahit baju : Spesifikasi input dalam algoritma komputer Jenis data apa yang diperlukan Berapa banyak data yang diperlukan Dari mana data tersebut diinputkan (bentuk form, atau yang lain)
8
A PA YANG DIPERLUKAN OLEH A LGORITMA ? PROCESS Selain input, algoritma memerlukan langkah- langkah yang jelas dan tepat untuk menyatakan bagaimna melakukan operasi untuk mendapatkan output yang diinginkan menyatakan proses dalam algoritma Algoritma menyatkan kumpulan operas-operasi dasar yang diasumsikan dimengerti oleh eksekutor algoritma Resep makanan: haluskan, goreng, rebus, tiriskan, … Komputasi: add, multiply, modulo, div, output, …
9
A PA YANG DIPERLUKAN OLEH A LGORITMA ? SPESIFIKASI OUTPUT Hasil apa yang diperlukan Bagaimana penyajian output Apa yang terjadi dengan output jika iput error
10
B AGAIMNA MEMBUAT A LGORITMA BAIK ? Harus menghasilkan output yang benar untuk input yang legal Sebisa mungkin mengeksekusi secara efisien dengan jumlah langkah seminimal mungkin Sebisamungkin didesain sedemikian rupa sehingga orang lain mampu memahami dan memodifikasi untuk keperluan lebih lanjut
11
C ONTOH A LGORITMA Misalkan diberikan algoritma berikut (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 Jika diberikan n = 5 dan A=[4, 7, 3, 5, 9, 8]
12
M ELACAK A LGORITMA Nilai awal i=2, m=4. Berikutnya ada looping yang harus dicek im 2 3 4 5 (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
C ONTOH A LGORITMA 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
C ONTOH A LGORITMA 3 Apakah hasil dari algoritma di atas? Apakah pada langkah 3 perlu melakukan n kali perulangan? Apakah pada langkah 4 perlu n-1 perulangan Coba lakukan algoritma ini untuk 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
E FFISIENSI ALGORITMA Hitunglah pada algoritma 2 dan 3 ada berapa kali pengecekan if.. Then … Apa kesimpulanmu?
16
LATIHAN Buat Algoritma dengan kata-kata untuk beberapa masalah berikut Menentukan jenis segitiga berdasarkan panjang sisi a, b, dan c (lancip, tumpul, siku-siku) Menentukan KPK dari dua bilangan integer x dan y Menentukan persamaan garis singgung y=f(x) di titik (x,y) Menentukan apakah sebuah bilangan prima atau bukan Mencari nilai Pn(x) dengan input : n, koefisien A[1..n] dan nilai x dan output hasilnya
17
A TURAN PENULISAN ALGORITMA DENGAN PSEUDOCODE ) ALGORITMA Mencari Max //keterangan tujuan algoritma //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
A TURAN PENULISAN ALGORITMA DENGAN PSEUDOCODE ) 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
A TURAN PENULISAN ALGORITMA DENGAN PSEUDOCODE ) SINTAX FOR … TO … DO For i=nilaiawal to nilaiakhir do pernyataan 1 pernyataan 2 …. pernytaan n
20
A TURAN P ENULISAN A LGORITMA SINTAX WHILE… DO … While (kondisi) do pernyataan 1 pernyataan 2 …. pernytaan n
21
LATIHAN Tuliskan algoritma berikut dalam pseudo code Menentukan jenis segitiga berdasarkan panjang sisi a, b, dan c (lancip, tumpul siku-siku) Menentukan KPK dari dua bilangan integer x dan y Menentukan persamaan garis singgung y=f(x) di titik (x,y) Menentukan apakah sebuah bilangan prima atau bukan Mencari nilai Pn(x) dengan input : n, koefisien A[1..n] dan nilai x dan output hasilnya Mencari solusi SPL dua variabel dengan input koefisien-koefisien persamaan linear, output adalah x dan y
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.