Pertemuan 1 ( Bu retno )

advertisement
ALGORITMA
Dr.Eng. Retno Supriyanti, ST,MT
1. Ambil ikan gurame seberat 1 hingga 2 kg dan
biarkan ikan itu berenang di air yang bersih
selama 24 jam
2. Bersihkan sisik ikan itu dan sayat dagingnya
3. Lumuri sayatan daging ikan itu dengan
mentega dan bumbui dengan garam dan lada
4. Letakkan diatas papan dan panggang dengan
api sedang selama 10 menit
5. Buang ikan gurame dan makan papannya
(source: Adlai Stevenson)
Pendahuluan
• Algoritma : Sebuah himpunan terhingga
dari instruksi yang mempunyai
karakteristik sebagai berikut:
– Presisi
– Unik
– Terhingga
– Masukan
– Keluaran
– Umum
Contoh
1. x := a
2. Jika b > x, maka x:= b.
3. Jika c > x, maka x:=c.
Algoritma Dalam Kehidupan
• Algoritma adalah jantung ilmu komputer atau
informatika.
• Banyak cabang ilmu komputer yang diacu dalam
terminologi algoritma.
• Namun algoritma juga digunakan dalam
kehidupan sehari-hari, contohnya resep
makanan.
• Di dalam resep makanan terdapat langkahlangkah yang merupakan algoritma. Selain itu
masih banyak contoh algoritma yang lain.
Bahasa Pemrograman
• Untuk melaksanakan suatu algoritma diperlukan
suatu bahasa pemrograman, contoh bahasa
pemrograman adalah : Pascal, C++, Basic, dll.
• Notasi algoritma dapat diterjemahkan kedalam
bahasa pemrograman apapun, dengan kata lain
notasi algoritma bersifat independen.
Flowchart
• Suatu flowchart adalah suatu representasi
secara diagram yang mengilustrasikan urutan
dari operasi yang dilakukan untuk mendapatkan
suatu hasil.
• Dengan kata lain, flowchart membantu kita untuk
mengerti dan melihat bentuk algoritma dengan
menampilkan algoritma dalam simbol-simbol
gambar.
Start / End
Proses
Input / Output
Percabangan
Koneksi dua bagian flowchart
Garis Alir
Gambar 1.1
Flowchart
• Dalam menggambar flowchart, digunakan
simbol tertentu seperti diatas.
• Contoh berikut bisa digunakan untuk lebih
mengerti perbedaan kegunaan simbolsimbol tersebut.
• Misal kita ingin mencari jumlah dari 2 buah
bilangan, maka flowchart-nya adalah
sebagai berikut :
Start
Masukkan
A dan B
C=A+B
Tampilkan C
End
Gambar 1.2
Flowchart
• Contoh lain, misalkan kita ingin
mengetahui apakah sebuah bilangan
ganjil atau genap.
• Untuk itu kita harus membuat flowchart
seperti ini :
Start
Masukkan A
Bagi A dengan 2
ya
Apakah sisa
hasil bagi = 0 ?
“Genap”
tidak
“Ganjil”
End
Gambar 1.3
Pseudo Code
• Pseudo Code adalah urutan baris algoritma
seperti kode pemrograman dan tidak memiliki
sintak yang baku.
• Pseudo Code lebih umum digunakan oleh
programmer yang berpengalaman.
• Akan tetapi, flowchart lebih mudah dimengerti
oleh programmer pemula.
• Pseudo code sangat mudah diimplementasikan
ke dalam kode program dibandingkan dengan
flowchart.
Pseudo Code
• Kita bisa bebas menulis pseudo code selama itu
mudah dimengerti bagi orang lain.
• Tetapi disarankan untuk menggunakan keyword
yang umum digunakan seperti : if, then, else,
while, do, repeat, for, dan lainnya.
• Dan ikuti gaya penulisan pemrograman seperti
Pascal, C++, dll.
• Perhatikan kode dibawah ini :
1.
2.
3.
4.
Mulai
Masukkan sebuah angka
Masukkan sebuah angka dan tampilkan
Ambil angka yang sebelumnya dan
tampilkan
5. Selesai
Pseudo Code
• Walaupun pseudo code diatas masih bisa
dimengerti tetapi ada beberapa statemen yang
ambigu.
• Dari baris kedua, kita tidak tahu kemana angka
tersebut disimpan dan kita juga tidak tahu angka
yang mana yang dimaksud untuk “angka yang
sebelumnya”. Apakah angka yang pertama atau
yang kedua.
• Pseudo Code diatas dapat dimodifikasi menjadi
seperti berikut :
1.
2.
3.
4.
5.
Start
Masukkan A
Masukkan B, Tampilkan B
Tampilkan A
End
Pseudo Code
• Pseudo Code diatas lebih baik
dibandingkan sebelumnya.
• Kita bisa dengan jelas melihat dimana
angka disimpan dan angka yang mana
yang ditampilkan.
• Sekarang kita akan mengubah flowchart
pada gambar 1.2
1.
2.
3.
4.
5.
Start
Masukkan A dan B
C=A+B
Tampilkan C
End
Pseudo Code
• Cobalah ubah flowchart pada gambar 1.3
menjadi pseudo code!
BILANGAN BULAT
Pengertian
Bilangan bulat terdiri dari
bilangan bulat negatif dan
bilangan cacah, ditulis:
B = {…,-3, -2, -1, 0, 1, 2, 3, 4, …}
Pada garis bilangan

-4

-3

-2

-1
 1
0

2

3

4
Keterangan :
1. Bilangan bulat negatif merupakan
kelompok bilangan yang terletak
disebelah kiri nol.
2. Pada garis bilangan mendatar, jika
bilangan a terletak di sebelah kiri b
maka a lebih kecil dari b, ditulis a < b
atau b > a (dibaca b lebih besar dari a)
3. Untuk a < b maka :
Perubahan dari a ke b disebut naik
Perubahan dari b ke a disebut turun
Operasi Bilangan Bulat
1. Penjumlahan
a. Tertutup  a + b  bilangan bulat
b. Komutatif  a + b = b + a
c. Asosiatif  (a + b) + c = a + (b + c)
2. Pengurangan
Lawan (invers)  a – b = a + (-b)
3. Perkalian
a. Tertutup  a x b  bilangan bulat
b. Komutatif  a x b = b x a
c. Asosiatif  (a x b) x c = a x (b x c)
d. Unsur identitas  a x 1 = a
e. Distributif  a (b + c) = ab + ac
a (b - c) = ab – ac
4. Pembagian
Kebalikan (invers) dari perkalian
a : b = a x 1/b
KPK dan FPB
KPK (Kelipatan Persekutuan Terkecil)
KPK dari 2 bilangan atau lebih dapat
diperoleh dengan :
Dari anggota himpunan kelipatan persekutuan
• bilangan-bilangan tersebut yang terkecil dan
bukan nol, atau
Dengan cara mengalikan faktor-faktor prima
•yang berbeda dengan pangkat tertinggi.
• Contoh :
Tentukan KPK dari 8 dan 12 !
KP dari 8 dan 12 = {0, 24, 48, 72, …}, maka
KPK dari 8 dan 12 adalah 24.
Dengan faktor prima :
8 = 2 x 2 x 2 = 23
12 = 2 x 2 x 3 = 22 x 3
KPK dari 8 dan 12 adalah 23 x 3 = 24
• FPB (Faktor Persekutuan Terbesar)
• FPB dari 2 bilangan atau lebih dapat
diperoleh dengan :
Dari anggota himpunan faktor
•persekutuan bilangan-bilangan
tersebut yang terbesar atau,
Dengan cara mengalikan faktor•faktor prima yang sama dengan
pangkat terendah.
• Contoh :
Tentukan FPB dari 8 dan 12 !
FP dari 8 dan 12 = {1, 2, 4}, maka FPB dari
8 dan 12 adalah 4.
Dengan faktor prima :
8 = 2 x 2 x 2 = 23
12 = 2 x 2 x 3 = 22 x 3
FPB dari 8 dan 12 adalah 22 = 4
Contoh soal 1
Dalam suatu tes, jawaban yang benar diberi
nilai 4, yang salah diberi nilai -2, dan untuk
soal tidak dijawab diberi nilai 0. Jika dari
25 soal, Andi menjawab dengan benar 18
soal dan 5 soal salah serta sisanya tidak
dijawab, maka berapa nilai yang diperoleh
andi?
Pembahasan
Benar (b) = 4, Salah (s) = -2, dan Kosong (k)=0
• Rumus nilai siswa adalah:
N = 4b – 2s + 0k
Nilai Andi ; b = 18, s = 5, dan k = 2 adalah;
N = 4(18) – 2(5) + 0(2)
= 72 – 10 + 0
= 62
Contoh soal 2
Dalam sebuah lomba, terdapat 17 orang
ikut lomba busana dan 11 orang ikut
lomba melukis. Jika jumlah peserta lomba
seluruhnya ada 25 orang, maka berapa
persentase banyak peserta yang hanya
mengikuti lomba melukis saja ?
Pembahasan
n (M) = 11
n (B) = 17
n(M  B) =
= n(M) + n(B) – n(M  B)
= 11 + 17 – 25 = 3
n (M) saja = 11 – 3 = 8
Persentasenya =
8/
25 x 100% = 32 %
S
M
8
B
3
14
Contoh soal 3
Seorang petani memiliki lahan seluas 1 ha
dan 3/5 nya akan digunakan untuk
menanam jagung, setiap 1 m2 lahan
memerlukan bibit jagung sebanyak 11/2
ons. Jika harga bibit jagung Rp 2000,- per
kilogram maka berapa biaya untuk
membeli jagung seluruhnya ?
Pembahasan
• Lahan yang digunakan untuk menanam
jagung = 3/5 x 10.000 m2 = 6.000 m2
• Tiap 1 m2 lahan memerlukan jagung 11/2
ons = 0,15 kg
Banyak jagung seluruhnya
= 6000 x 0,15 kg = 900 kg
Biaya membeli jagung = Rp 2.000,- x 900
= Rp 1.800.000,-
selesai
Download