abc01 algoritma-dan-flowchart
DESCRIPTION
algoritma (Hizkia Glorius Soma)TRANSCRIPT
![Page 1: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/1.jpg)
ALGORITMA DAND FLOWCHART Aurino Djamaris
Bakrie University
![Page 2: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/2.jpg)
ALGORITMA AND FLOWCHART
Sebuah tugas pemrograman umum dapat dibagi
menjadi dua tapah:
Tahap Pemecahan Masalah :
Menghasilkan urutan langkah-langkah yang
menggambarkan solusi dari masalah
Urutan langkah-langkah ini disebut algorithm
Tahap Implementasi
implementasi program dalam bahasa pemrograman
aurinodjamaris
![Page 3: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/3.jpg)
LANGKAH-LANGKAH DALAM PEMECAHAN
MASALAH
Pertama membuat algoritma umum (misal menggunakan pseudocode)
Pertajam algoritma berturut-turut untuk mendapatkan langkah-langkah algoritma yang rinci yang sangat dekat dengan bahasa komputer.
Pseudocode adalah bahasa buatan dan informal yang membantu programmer mengembangkan algoritma. Pseudocode sangat mirip dengan bahasa Inggris (boleh jiuga menggunakan bahasa Indonesia) sehari-hari.
aurinodjamaris
![Page 4: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/4.jpg)
PSEUDOCODE & ALGORITMA
Contoh 1: Tulis algoritma untuk
menentukan nilai akhir siswa dan
menunjukkan apakah itu lulus
atau gagal. Nilai akhir dihitung sebagai rata-
rata empat nilai.
aurinodjamaris
![Page 5: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/5.jpg)
PSEUDOCODE & ALGORITMA
Pseudocode:
Input a set of 4 marks
Calculate their average by summing and dividing by 4
if average is below 55
Print “FAIL”
else
Print “PASS”
aurinodjamaris
![Page 6: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/6.jpg)
PSEUDOCODE & ALGORITMA
Detailed Algorithm
Step 1: Input M1,M2,M3,M4
Step 2: GRADE (M1+M2+M3+M4)/4
Step 3: if (GRADE < 50) then
Print “FAIL”
else
Print “PASS”
endif
aurinodjamaris
![Page 7: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/7.jpg)
FLOWCHART
(Dictionary) Representasi skematik dari sebuah urutan operasi, seperti dalam sebuah proses manufaktur atau program komputer. (Technical) Sebuah representasi grafis dari urutan operasi dalam suatu Diagram Alir sistem informasi atau Diagram Alir Sistem Informasi program. Yang menunjukkan bagaimana data mengalir dari dokumen asal melalui komputer sampai kepada pengguna. Diagram alur Program menunjukkan urutan instruksi dalam satu program atau subroutine. Simbol yang berbeda digunakan untuk menggambarkan setiap jenis diagram alur.
aurinodjamaris
![Page 8: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/8.jpg)
FLOWCHART
Flowchart
Menunjukkan logika suatu algoritma
Menekankan pada langkah-langkah setiap kegiatan
dan hubungannya dengan yang lain
contoh. mengontrol aliran dari satu aksi ke
berikutnya
aurinodjamaris
![Page 9: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/9.jpg)
SYMBOL FLOWCHART
Oval
Parallelogram
Rectangle
Diamond
Hybrid
Name Symbol Use in Flowchart
Denotes the beginning or end of the program
Denotes an input operation
Denotes an output operation
Denotes a decision (or branch) to be made.
The program should continue along one of
two routes. (e.g. IF/THEN/ELSE)
Denotes a process to be carried out
e.g. addition, subtraction, division etc.
Flow line Denotes the direction of logic flow in the program
Basic
aurinodjamaris
![Page 10: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/10.jpg)
CONTOH
“PASS”
Step 1: Input M1,M2,M3,M4
Step 2: GRADE (M1+M2+M3+M4)/4
Step 3: if (GRADE <50) then
Print “FAIL”
else
Print “PASS”
endif
START
Input
M1,M2,M3,M4
GRADE(M1+M2+M3+M4)/4
IS
GRADE<5
0
“FAIL”
STOP
Y N
aurinodjamaris
![Page 11: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/11.jpg)
CONTOH 2
Tulis algoritma dan gambarkan flowchart untuk konversi panjang dari feet ke centimeter.
Pseudocode:
Input the length in feet (Lft)
Calculate the length in cm (Lcm) by multiplying LFT with 30
Print length in cm (LCM)
aurinodjamaris
![Page 12: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/12.jpg)
CONTOH 2
Algorithm
Step 1: Input Lft
Step 2: Lcm Lft x 30
Step 3: Print Lcm
START
Input
Lft
Lcm Lft x 30
Lcm
STOP
Flowchart
aurinodjamaris
![Page 13: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/13.jpg)
CONTOH 3
Tulis algoritma dan gambar flowchart yang akan
membaca dua sisi segiempat dan hitung luasnya.
Pseudocode
Input lebar (Le) dan Panjang (Pa) segiempat
Hitung luas (Lu) dengan mengalikan Le dengan Pa
Print Lu
aurinodjamaris
![Page 14: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/14.jpg)
CONTOH3
Algoritma
Langkah 1: Input Le,Pa
Langkah 2: Lu Le x Pa
Langkah 3: Print Lu
START
Input
Le,Pa
Lu Le x Pa
Lu
STOP
aurinodjamaris
![Page 15: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/15.jpg)
CONTOH 4
Tulis algoritma dan gambar flowchart yang
menghitung akar-akar persamaan kuadrat
Petunjuk: d = 𝑠𝑞𝑟𝑡 ( 𝑏2 − 4𝑎𝑐), dan akar-akarnya
adalah are: x1 = (–b + d)/2a and x2 = (–b –
d)/2a
2 0ax bx c
aurinodjamaris
![Page 16: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/16.jpg)
CONTOH 4
Pseudocode:
Masukkan Koefisien (a, b, c) dari persamaan kuadrat
Hitung d
Hitung x1
Hitung x2
Cetak x1 dan x2
aurinodjamaris
![Page 17: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/17.jpg)
CONTOH 4
Algorithm: Lngk 1: Input a, b, c
Lngk 2: d sqrt ( )
Lngk 3: x1 (–b + d) / (2 x a)
Lngk 4: x2 (–b – d) / (2 x a)
Lngk 5: Print x1, x2
4b b a c
START
Input
a, b, c
d sqrt(b x b – 4 x a x c)
x1 ,x2
STOP
x1 (–b + d) / (2 x a)
X2 (–b – d) / (2 x a)
aurinodjamaris
![Page 18: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/18.jpg)
STRUKTUR KEPUTUSAN
Pernyataan A>B adalah pernyataan logical
Pernyataan ini menggambarkan kondisi yang akan kita uji
if A>B is true (if A is greater than B) kita melaksanakan statement sebelah kiri
print nilai A
if A>B is false (if A is not greater than B) kita melaksanakan statement sebelah kiri
print nilai B
aurinodjamaris
![Page 19: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/19.jpg)
STRUKTUR KEPUTUSAN
Flowchart STRUKTUR KEPUTUSAN
is
A>B
B
A
Y N
aurinodjamaris
![Page 20: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/20.jpg)
STRUKTUR IF–THEN–ELSE
Strukturnya adalah sebagai berikut:
If kondisi then
hasil atau tindakan jika benar (true)
else
hasil atau tindakan jika salah (false)
endif
aurinodjamaris
![Page 21: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/21.jpg)
IF–THEN–ELSE STRUCTURE
Algoritm untuk flowchart berikut adalah:
If A>B then
print A
else
print B
endif
is
A>B
B
A
Y N
aurinodjamaris
![Page 22: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/22.jpg)
RELATIONAL OPERATORS
Operator Hubungan (Relational)
Operator Uraian
> Lebih besar dari (pada)
< Lebih besar dari (pada)
= Sama dengan
Lebih besar dari (pada) atau sama dengan
Lebih besar dari (pada) atau sama dengan
Tidak sama dengan
aurinodjamaris
![Page 23: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/23.jpg)
CONTOH 5
Tulis algoritma yang membaca dua nilai, menentukan nilai terbesar dan mencetak pesan nilai terbesar
ALGORITHM
Step 1: Input NILAI1, NILAI2
Step 2: if (nilai1 > nilai2) then
MAX nilai1
else
MAX nilai2
endif
Step 3: Print “Nilai terbesar adalah”, MAX
aurinodjamaris
![Page 24: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/24.jpg)
CONTOH 5
MAX nilai1
“Nilai terbesar adalah ”,
MAX
STOP
Y N
START
Input
nilai1,nilai2
MAX nilai2
is
nilai1>nilai2
aurinodjamaris
![Page 25: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/25.jpg)
IF BERJENJANG
Salah satu alternatif dalam Struktur keputusan
adalah statemen IF–THEN–ELSE
Dan di dalamnya bisa juga berisi statemen IF–
THEN–ELSE
aurinodjamaris
![Page 26: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/26.jpg)
CONTOH 6
Tulis algoritma yang membaca Tiga angka dan
cetak nilai terbesar.
aurinodjamaris
![Page 27: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/27.jpg)
CONTOH 6
Step 1: Input N1, N2, N3
Step 2: if (N1>N2) then
if (N1>N3) then
MAX N1 [N1>N2, N1>N3]
else
MAX N3 [N3>N1>N2]
endif
else
if (N2>N3) then
MAX N2 [N2>N1, N2>N3]
else
MAX N3 [N3>N2>N1]
endif
endif
Step 3: Print “Angka terbesar adalah ”, MAX
aurinodjamaris
![Page 28: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/28.jpg)
CONTOH 6
Flowchart: Gambar algoritma untuk contoh di
atas.
aurinodjamaris
![Page 29: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/29.jpg)
CONTOH 7
Tulis algoritma dan gambar flowchart untuk
a) Membaca nama pegawai (NAME), Jam
lembur (OVERTIME), jam tidak masuk
(ABSENT) dan
b) Tentukan pembayaran bonus (PAYMENT).
aurinodjamaris
![Page 30: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/30.jpg)
CONTOH 7
Tabel Bonus
OVERTIME – (2/3)*ABSENT Bonus
>40 Jam
>30 tapi 40 Jam
>20 tapi 30 Jam
>10 tapi 20 Jam
10 Jam
Rp. 500.000
Rp. 400.000
Rp. 300.000
Rp. 200.000
Rp. 100.000
aurinodjamaris
![Page 31: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/31.jpg)
Step 1: Input NAME,OVERTIME,ABSENT
Step 2: if (OVERTIME–(2/3)*ABSENT > 40) then
PAYMENT 50
else if (OVERTIME–(2/3)*ABSENT > 30) then
PAYMENT 40
else if (OVERTIME–(2/3)*ABSENT > 20) then
PAYMENT 30
else if (OVERTIME–(2/3)*ABSENT > 10) then
PAYMENT 20
else
PAYMENT 10
endif
Step 3: Print “Bonus ”, NAME “adalah Rp.”, PAYMENT
aurinodjamaris
![Page 32: Abc01 algoritma-dan-flowchart](https://reader033.vdokumen.com/reader033/viewer/2022042506/558820b5d8b42aed268b467c/html5/thumbnails/32.jpg)
CONTOH 7
Flowchart: Gambarkan flowchart dari algoritma
di atas?
aurinodjamaris