Algoritma
Algoritma
Algoritma analisis
analisis Program
Eksekusi Data
Hasil
Suatu Algoritma yg terbaik (The Best):
“Suatu algoritma harus menghasilkan output
yg tepat guna (efektif) dlm waktu yg relatif
singkat & penggunaan memori yg relatif
sedikit (efesien) dgn langkah yg berhingga &
prosedurnya berakhir baik dlm keadaan
diperoleh suatu solusi.“
Contoh:
Sebuah prosedur ketika akan mengirimkan surat kepada
teman:
1. Tulis surat pada secarik kertas surat
2. Ambil sampul surat atau amplop
3. Masukkan surat ke dalam amplop
4. Tutup amplop surat dengan lem perekat
5. Tulis alamat surat yg dituju, jika tdk ingat, lebih dahulu ambil buku
alamat & cari alamat yg dituju, lalu tulis alamat tsb pd amplop
surat.
6. Tempelkan perangko pada amplop surat
7. Bawa surat ke kantor pos utk diserahkan pd pegawai pos atau
menuju ke bis surat untuk memasukkan surat ke dlm kotak/bis
surat.
Penulisan Algoritma
• Menggunakan bahasa natural (Bahasa manusia:
Indonesia, Inggris)
Kelemahannya masih sering membingungkan (ambigu) / sulit
dipahami.
• Menggunakan Flowchart
Baik karena alur algoritma dapat dilihat secara visual, tetapi repot
pembuatannya jika algoritma panjang
• Menggunakan Pseudocode
Sudah dekat dengan bahasa pemrograman, tetapi sulit dimengerti
oleh orang yang belum tahu pemrograman
Menggunakan Natural Language
(Bahasa Natural)
Write an algorithm to perform addition of two number.
•Step 1: read the first number say a
•Step 2: read the second number say b
•Step 3: add the two number and store the result in a
variable c
•Step 4: display the result
Menggunakan Pseudo Code
Algorithm sum(a, b)
//problem description: this algorithm perform addition of two
//number
//input: two integers a and b
//output: addition of two integers
ca+b
Write c
Menggunakan Flowchart
Start Start Statement
Transition
Conditional Statement
Input the
value of a
Input the
value of b
c= a + b
Display the
value of c
Stop
• Buatlah flowchart untuk menampilkan semua bilangan genap
dari 1 – 20 dan bilangan ganjil dari 30 – 50 dengan
menggunakan pengulangan while.
1. x : int
2. y : int
3. Deskripsi
4. x ← 2
5. y ← 31
6. while (x<=20)
7. write (x)
8. x ← x+2
9. while (y<=49)
10.write (y)
11.y ← y+2
12.end while
• Buatlah flowchart untuk menampilkan semua bilangan
kelipatan 7 dari 1 – 50 dengan menggunakan
pengulangan do while.
1.x : int
2.Deskripsi
3.x ← 7
4.Do
5.write (x)
6.x ← x+7
7.while (x<=49)
Pentingnya Analisa Algorithm
• Suppose, if we want to build a house we do not directly
start constructing the house. Instead we consult an
architect, we put our ideas and suggestion, accordingly he
draws a plan of the house, and he discussed it with us.
Finally, the blue print of house gets ready. Now it
becomes very easy and systematic for construction of
desired house.
• Designing is just a paper work and it can be easily
modified on the paper.
• Before actual implementation of the program, designing
an algorithm is very important step.
Tahap Analisa Algoritma
1. Bagaimana merencanakan algoritma?
2. Bagaimana menyatakan suatu algoritma
(menulis algoritma)?
3. Bagaimana validitas suatu algoritma?
4. Bagaimana menganalisa suatu algoritma?
5. Bagaimana menguji program dari suatu
algoritma?
Ad.1. Bagaimana merencanakan algoritma
• Dengan psudocode
Suatu cara penulisan algoritma agar ide dan logika dari
algoritma dapat disampaikan/diekspresikan menggunakan
gaya bahasa pemrograman tertentu.
Phi 3.14
Input (diameter)
Radius diameter / 2
Luas phi * radius * radius
Output (Luas)
End
• Dengan flowchart / Start
diagram alir
Program Flowchart, yaitu
bagan yang menggambar- Phi = 3.14
kan urutan logika dari suatu
prosedur pemecahan Input
masalah. (diameter)
Radius = diameter/2
Luas = phi * radius * radius
Output
Luas
Stop
Tahap Proses Uji Algoritma
Penterjemah :
• Interpreter : menterjemahkan baris per baris instruksi.
Contoh bahasa Basic.
• Compiler : menterjamahkan setelah seluruh instruksi ditulis.
Contoh bahasa Pascal, C, C++, dll.
Interpreters and Compilers (Bits and Bytes, Episode 6).
mp4
Tugas (Buat Flowchartnya dan
Pseudocodenya !)
1. Buatlah algoritma untuk menghitung konversi suhu.dari
Celcius menjadi Reamur dan Farenheit.
• Input: suhu dalam Celcius
• Proses: R = 4/5 * C dan F = 9/5 * C + 32
• Output