algoritma pemrograman

advertisement
Dasar-dasar Algoritma
Tenia Wahyuningrum, SKom., MT
Asal Usul Kata
Al
Khuwarizmi
Algorism
Algorithm
Algoritma
Abu Ja’far Mohammed ibnMusa Al-Khwarizmi
Buku : Al Jabar Wal
Muqabala (Pemugaran dan
pengurangan)
Baghdad , sekitar tahun 780 s.d 850.
Definisi Algoritma
Urutan langkah-langkah logis
penyelesaian masalah yang disusun
secara sistematis dan logis.
LOGIS
Sesuai dengan
logika
Benar
menurut
penalaran
Masuk akal
Pertimbangan algoritma
Harus
benar
Output sesuai yang dikehendaki
Efisiensi
Efisiensi waktu dan memori
Hasil yang
dicapai
Harus mampu
memberikan hasil
yang sedekat
mungkin dengan nilai
sebenarnya
“Setiap orang dapat membuat
algoritma yang berbeda untuk
menyelesaikan masalah”
Jawablah
Sebutkan contoh
algoritma
dalam kehidupan
sehari-hari!
Contoh
No
Proses
Algoritma
Contoh Langkah dalam Algoritma
1
Membuat Kue
Resep Kue
Masukan telur dalam wadah, kocok
hingga mengembang
2
Membuat
pakaian
Pola
pakaian
Gunting kain dari pinggir kiri bawah
ke arah kanan sejauh 5 cm
3
Merakit mobil
tamiya
Panduan
merakit
Sambungkan komponen A dengan
komponen B
4
Kegiatan
sehari-hari
Jadwal
harian
Pukul 06.00 : mandi pagi
Pukul 07.00 : berangkat kuliah
5
Mengisi
voucher HP
Panduan
pengisian
Tekan 888
Masukkan nomor voucher
Pemroses



Membuat kue  koki / chef
Membuat pakaian  penjahit
Memainkan lagu  pianis
Pemroses harus
Mengerti setiap
langkah dalam
algoritma
Mengerjakan
operasi yang
bersesuaian dengan
langkah tsb
Kumpulan
Pernyataan
komputer
Bahasa Pemrograman
Metode &
Tahapan
sistematis
Program
Algoritma
AlGoRitMa, pRogRAm & BaHaSA
Bahasa
untuk
berinteraksi
manusia
dengan
komputer
• bahasa
mesin
LLL
MLL
• assembly
• Bahasa c,
pascal,
basic, dll
HLL
Formula
ALgoritma
Program
Bahasa
001100011
!@!@*#)(@)
!(@_**
Bagaimana cara mereka berkomunikasi?


Interpreter menerjemahkan program baris per baris
artinya jika suatu baris akan dieksekusi, maka baris
tersebut diterjemahkan dulu ke bahasa mesin.
Contoh : bahasa basic
Interpreter
Compiler
Menerjemahkan
Menerjemahkan semua perintah
baris per baris kemudian
menjalankannya
Interpreter &
Compiler
Gabungan
keduanya
Java
Beberapa cara untuk menuliskan algoritma
1
2
3
Menggunakan
kata-kata
Menggambar
diagram/
flowchart
Menuliskan
dalam bentuk
pseudocode
Dengan menggunakan kata-kata
Contoh masalah
A
B
Algoritma TukarIsiBejana
Diberikan dua buah bejana, A dan B; bejana A berisi larutan
berwarna merah, bejan B berisi larutan berwarna biru.
Pertukarkan isi kedua bejana itu sedemikian sehingga bejan
A berisi larutan berwarna biru dan bejan B berisi larutan
berwarna merah.
Deskripsi:
1.
Tuangkan larutan dari bejan A ke dalam bejana C.
2.
Tuangkan larutan dari bejan B ke dalam bejana A.
3.
Tuangkan larutan dari bejan C ke dalam bejana B.
Dengan menggunakan flowchart
Contoh masalah
Jika lampu di rumah mati, apa
yang harus dilakukan?
Dengan flowchart
Dengan pseudocode
Dengan pseudocode
“Satu cara untuk mewujudkan (atau
kadang-kadang melakukan kodifikasi)
suatu algoritma adalah dengan penulisan
pseudocode”
Pseudocode
1
2
3
TEXT
Tidak
menggunakan
sintaksis
bahasa
pemrograman
tertentu
Tidak ada
aturan baku
dalam
penulisannya
Beberapa
penulis
sedikit meminjam
sintaks bahasa
tertentu
Dengan pseudocode
Algorithm LargestNumber
Input: A non-empty list of numbers L.
Output: The largest number in the list L.
largest ← -∞
for each item in the list L, do
if the item > largest, then
largest ← the item
return largest
Contoh lain pseudocode
Regular code (written in PHP):
<?php
if ($foo == "bar")
{
$yesFoo = true;
Pseudocode:
}
If the value of foo is equal to bar
else
then make "yesFoo" true
{
otherwise, make "yesFoo" false
$yesFoo = false;
}
?>
Latihan
7+3=?








Mulai
Masukkan angka pertama
Pilih “+”
Masukkan angka kedua
Hasil  angka pertama + angka kedua
Pilih “=“
Tampilkan hasil
Selesai
mulai
Masukkan
angka 1
a
Tampilkan
hasil
Pilih “+”
selesai
Masukkan
angka 2
Hasil=angka1+angka 2
a
Latihan di kelas
Tulislah algoritma untuk mencari luas segitiga jika
masukan dari pengguna adalah alas dan tinggi!
(dengan menggunakan kalimat dan flowchart)
Tugas Kecil 1



Buatlah algoritma untuk mengubah suhu dari Celcius
ke Kelvin, dan dari Celcius ke Reamur
Tuliskan contoh algoritma dalam kehidupan seharihari, beserta langkah-langkahnya
Deadline 1 Minggu
Download