introduction to algorithms
DESCRIPTION
Introduction to Algorithms. Topik. Solving problems Algorithms Nilai dan v ariabel. Bgmn kita memecahkan masalah ?. Langsung kerjakan Tabak dan untung-untungan Trial error Pengalaman "Scientifically“ = dg cara ilmiah. Analysis. Problem specification. Design. Algorithm. - PowerPoint PPT PresentationTRANSCRIPT
1
Introduction to Algorithms
2
Topik
• Solving problems
• Algorithms
• Nilai dan variabel
3
Bgmn kita memecahkan masalah ?
• Langsung kerjakan
• Tabak dan untung-untungan
• Trial error
• Pengalaman
• "Scientifically“ = dg cara ilmiah
4
0100111010110010101010101001010101010100110010101010101001011010011101010101010010010111010011110101010111110101010001101…
sterilize(saw,alcohol);raise_hammer();lower hammer(fast);start(saw);/* etc. etc. */
Patient has elevated pressure in anterior parietal lobe
Process memcahkan masalah
Problem
specification
Algorithm
Program
Executable (solution)
Design
Implementation
Compilation
"Doctor, my head hurts"
Analysis
1. Sterilize cranial saw2. Anaesthetize patient3. Remove top of skull4. Get the big spoon...5. etc., etc.
5
steril(gergaji,alcohol);raise_hammer();lower hammer(fast);start(saw);/* etc. etc. */
Process memcahkan masalah
Problem specification
Algorithm
Program
Executable (solution)
Analysis
Design
Implementation
Compilation
"Dok, kepala saya sakit”
Pasien ada penyumbatan pd anterior parietal lobe.
1. Steril gergaji2. bius3. Potong batok kepala4. Ambil spoon...5. etc., etc.
010011101011001010101010100101010101010011001010101010100101101001110101010101001001011101001111010101011111010101000110100001101...
6
Process memcahkan masalah
Problem specification
Algorithm
Program
Executable (solution)
Analysis
Design
Implementation
Compilation
7
Algorithm – DefinisiFrom: Websters Revised Unabridged Dictionary, 1913:
Algorism (Al"go*rism Al"go*rithm) • n. [OE. algorism, algrim, augrim, OF. algorisme, F.
algorithme (cf. Sp. algoritmo, OSp. alguarismo, LL. algorismus)
• Al-Khowarezmi aslinya Abu Ja'far Mohammed ben Musa, ahli arithmetic awal abad 9, bukunya dalam bhs latin algorismus.
8
• Urutan instruksi untuk menentukan langkah yang di perlukan dalam menyelesaikan suatu tugas.
• Muhammad ibn Musa al-KhwarizmiBerasal dari Khowarezm (sekarang Khiva di
Uzbekistan)
Algorithm
9Source: http://www.atlapedia.com/online/maps/political/Kazakh_etc.htm
10
Algorithm– SejarahMuhammad ibn Musa Al-Khwarizmi• Circa 160-230 A.H. (anno Hegirae)
• Circa 780-850 C.E. (Common Era)
11
Algorithm –Sejarah (lanj)
Muhammad ibn Musa Al-Khwarizmihttp://www-groups.dcs.st-andrews.ac.uk/~history/Mathematicians/Al-Khwarizmi.html
• Buku arithmetic:– Hindu numeration, decimal numbers, use of zero,
method for finding square root– Latin translation (c.1120 CE): “Algoritmi de
numero Indorum”
• Book aljabar algebra– Hisab al-jabr w’al-muqabala
12
• Urutan langkah yang menggambarkan bagaimana melakukan suatu pekerjaan
Algorithm – Working Definition
[As opposed to actually executing
the instructions]
13
Algorithm -- Contoh• Resep masakan• Instruksi Assembly • Aturan main game• Instruksi VCR • Deskripsi teknik bela diri• Arahan dari A to B• Pola jahitan • Manual perbaikan mobil
14
From Algorithms to Programs
Problem
C ProgramC Program
AlgorithmAlgorithm: A sequence of instructions describing how to do a task (or process)
15
Komponen Algorithm
• Variabel dan Nilai
• Instruksi
• Sequences (Urutan)
• Procedures (Prosedur)
• Selections (Pilihan)
• Repetitions (Perulanagan)
• Documentation
16
Nilai
• Mewakili kuantitas, jumlah atau pengukuran
• Bisa numeri atau alphabetical (atau lainnya)
• Biasanya memiliki unit yang berhubungan dengan tujuannya
17
Variabel
TolpesDapat berisi
10 kue
50 grams gula
3 potong roti
dll.
ValuesVariable
• Adalah container untuk nilai – tempat untuk menyimpan nilai
• Contoh :
18
Batasan Variabel
• Variabel dibatasi oleh nilai tipe yang di spesifikasikan
19
Komponen AlgorithmNilai dan Variabel
• Instruksi (primitive)
• Sequence (dr instruction)
• Procedure (yg melibatkan instruction)
• Selection (antara instruction)
• Repetition (dr instruction)
• Documentation (disamping instruction)
20
Instruksi (Primitives)
• Suatu action yang simple...
• ...dan jelas...
• ...komputer mengerti...
• ...dapat diaktualisasikan
21
Instruksi– Examples
• Take off your shoes
• Count to 10
• Cut along dotted line
• Jahit 1
• Purl 2
• tarik benang pelan-pelan
• Bubuhkan 10 grams arsenic
Directions to perform specific actions on values and variables.
22
Instruksi -- Application
• Beberapa instruksi dapat hanya di aplikasikan pada nilai atau variabel yang di spesifikasikan.
• Contoh:
23
Instruksi (Primitives) -- Recommendations
• Jika menulis algorithm, buat instruksi yang simple dan jelas
• Contoh:
Potong ayam kecil-kecil dan masak potongan tersebut pada minyak yang panas
Potong ayam kecil-kecil.
Panaskan minyak.
Masak ayam 5 menit
24
Instruksi (Primitives)• When writing an algorithm, make the
instructions simple and unambiguous.
• Example:
Potong ayam kecil-kecil dan masak potongan tersebut pada minyak yang panas
Potong ayam kecil-kecil.
Panaskan minyak.
Masak ayam 5 menit
“Urutan” dari instruksi yang simple.