Anda di halaman 1dari 35

Algoritma dan Flowchart

HOW TO THINK

DASAR PEMROGRAMAN
by: Ahmad Syauqi Ahsan
Modified : Dian Syafitri
Objectives
2

Setelah menyelesaikan bab ini,


anda diharapkan dapat:
 Mengerti tentang algoritma.
 Membuat algoritma dari suatu permasalahan.
 Mengerti tentang flowchart.
 Membuat flowchart dari suatu permasalahan.
Sistem Komputer
• Sebuah sistem komputer terdiri dari:
Hardware

3
Sistem Komputer
• Software dapat dikelompokkan menjadi:

Operating Programming Aplication


System Language Program

4
Tahapan Pembuatan Program
5

 Mengerti permasalahan yang akan diselesaikan.


 Input layout
 Proses-proses
 Output layout

 Menganalisa penyelesaian masalah.


 Membuat algoritma dan flowchart.
 Menulis program.
 Melakukan testing  program selesai.
 Membuat dokumentasi
Algoritma
• Asal kata Algoritma
berasal dari nama Abu
Ja’far Mohammed Ibn
Musa al-Khowarizmi
• Ilmuan Persia yang
menulis kitab al jabr
w’al-muqabala (rules
of restoration and
reduction)
• Tahun 825 M
• Berasal dari Iran
6
Definisi Algoritma
7

 Algoritma adalah urutan langkah logis tertentu untuk


memecahkan suatu masalah.
 Urutan langkah logis, yang berarti algoritma harus mengikuti suatu
urutan tertentu, tidak boleh melompat-lompat.
 (Dari Microsoft Press Computer and Internet Dictionaary 1997,
1998)
 Alur pemikiran dalam menyelesaikan suatu pekerjaan yang
dituangkan secara tertulis.
 Alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari
algoritma orang lain.
 Tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel
tertentu.
 (Dari Algoritma dan Struktur Data dengan C, C++, dan Java oleh
Moh Sjukani hal 1)
Contoh
Algoritma
dalam
kehidupan
sehari-hari

Menggunakan
ATM
8
Algoritma dalam bidang Komputer
9

 Dalam bidang komputer, algoritma sangat diperlukan


dalam menyelesaikan berbagai masalah
pemrograman, terutama dalam komputasi numeris.
 Tanpa algoritma yang dirancang baik maka proses
pemrograman akan menjadi salah, rusak, atau lambat
dan tidak efisien
Manusia - Komputer
10

 Pelaksana algoritma adalah Komputer.


 Manusia dan komputer berkomunikasi dengan cara:
manusia memberikan perintah-perintah kepada komputer
berupa instruksi-instruksi yang disebut program.
 Alat yang digunakan untuk membuat program tersebut
adalah bahasa pemrograman.
 Bahasa pemrograman sangat bermacam-macam: C, C++,
Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++ dan
masih banyak bahasa lainnya. Dari berbagai bahasa
pemrograman cara memberikan instruksinya berbeda-beda
namun bertujuan menghasilkan output yang sama
Kriteria Algoritma
(Donald E. Knuth)
11

 Input: algoritma dapat memiliki nol atau lebih inputan


dari luar.
 Output: algoritma harus memiliki minimal satu buah
output keluaran.
 Definiteness (pasti): algoritma memiliki instruksi-
instruksi yang jelas dan tidak ambigu.
 Finiteness (ada batas): algoritma harus memiliki titik
berhenti (stopping role).
 Effectiveness (tepat dan efisien): algoritma sebisa
mungkin harus dapat dilaksanakan dan efektif. Contoh
instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1

Namun ada beberapa program yang memang dirancang untuk


unterminatable: contoh Sistem Operasi
Struktur Algoritma

 Bagian Kepala (Header)


 memuat nama dan informasi tentang algoritma yang dibuat

 Bagian Deklarasi/Definisi Variabel


 memuat definisi tentang nama variabel, konstanta, prosedur,
fungsi, tipe data yang digunakan
 Bagian Deskripsi/Rincian Langkah
 memuat langkah-langkah penyelesaian masalah
Contoh Algoritma

Algoritma Luas Lingkaran


{menghitung luas lingkaran apabila
jari-jarinya diketahui}
Deklarasi
{Definisi nama tetapan}
Jari const phi = 3.14;
{Definisi nama variabel}
real jari-jari, luas;
Deskripsi
read(jari-jari);
luas = phi * jari-jari * jari-jari
write(luas);
14

 Algoritma Luas_Segitiga
 Deklarasi
 Phi : real

 R, Luas : real

 Deskripsi
 Input R, Phi

 Proses : hitung Luas = phi*R*R

 Output Luas
Algoritma Menghitung Luas
Segitiga ?
16

 Energi = m*c*c
Flowchart
17

 Bagan-bagan yang mempunyai arus yang


menggambarkan langkah-langkah penyelesaian
suatu masalah.
 Merupakan cara penyajian dari suatu algoritma.
 Ada 2 macam Flowchart:
 System Flowchart  urutan proses dalam system dengan
menunjukkan alat media input, output serta jenis media
penyimpanan dalam proses pengolahan data.
 Program Flowchart  urutan instruksi yang
digambarkan dengan symbol tertentu untuk
memecahkan masalah dalam suatu program.
Contoh System Flowchart
Data
jawaban
ujian

Koreksi

Daftar Koreksi File


Data utama Tabel Siswa
ujian

Periksa
Ujian

Laporan
File
Hasil
siswa
Ujian
lulus
18
Contoh Program Flowchart
Start

Print Judul

READ
Data

Ya
Akhir
End
file ?

Tidak

Ya PRINT
Kode = "P" Nama, Alamat
"Perempuan"

Tidak

19
Simbol-simbol Flowchart
20

 Flow Direction Symbols (Simbol penghubung


alur)
 Processing Symbols (Simbol proses).
 Input-output Symbols (Simbol input-output)
Flow Direction Symbols
21
Processing Symbols
22
Processing Symbols - continued
23
Input-output Symbols
24
Input-output Symbols - continued
25
26
Pembuatan Flowchart
27

 Tidak ada kaidah yang baku.


 Flowchart = gambaran hasil analisa suatu masalah
 Flowchart dapat bervariasi antara satu
pemrogram dengan pemrogram lainnya.
 Secara garis besar ada 3 bagian utama:
 Input
 Proses
 Output
Pembuatan Flowchart - continued
28

 Hindari pengulangan proses yang tidak perlu dan


logika yang berbelit sehingga jalannya proses
menjadi singkat.
 Jalannya proses digambarkan dari atas ke bawah
dan diberikan tanda panah untuk memperjelas.
 Sebuah flowchart diawali dari satu titik START dan
diakhiri dengan END.
Contoh Algoritma

Algoritma Luas Lingkaran


{menghitung luas lingkaran apabila
jari-jarinya diketahui}
Deklarasi
{Definisi nama tetapan}
Jari const phi = 3.14;
{Definisi nama variabel}
real jari-jari, luas;
Deskripsi
read(jari-jari);
luas = phi * jari-jari * jari-jari
write(luas);
Again Another Example
30

START
1. Start
Buat variabel:
Jari, Luas 2. Buat variabel Jari dan Luas

Read 3. Masukkan nilai Jari


Jari

4. Hitung Luas = 3,14*Jari*Jari


Luas = 3,14 * Jari*Jari

5. Cetak Luas
Write
Luas
6. End
END
Contoh Flowchart

Mulai 1. Mulai

2. Masukkan nilai A dan B


Input A,B

3. Pertanyaan seleksi :
Y
apakah A>B
A>B? Cetak A

4. Jika Benar  Cetak A


N

Cetak B 5. Jika Salah  Cetak B

6. Selesai
Selesai
Exercise
32

1. Buatlah algoritma untuk menghitung Kecepatan


sebuah kendaraan.
2. Buatlah flowchart dari algoritma pada soal no 1
diatas.
3. Buatlah algoritma untuk menghitung rata-rata 3
buah nilai/value. Dimana rumus untuk
memperoleh rata2 nilai adalah
ratanilai = 20%nilai1 + 30%nilai2 + 50%nilai3
Latihan
33

Indeks Massa Tubuh (IMT) bermanfaat untuk


menentukan tingkat kesehatan seseorang. IMT
diperoleh dari Berat Badan dan Tinggi Badan
seseorang.
IMT = Berat Badan / (Tinggi Badan)
2

Buatlah Algoritma dan Flowchart untuk


menghitung IMT.
34

elearning.stmikbumigora.ac.id
elearning.stmikbumigora.net

>S1 Teknik Informatika > Semester 1 >


algoritma&pemrograman

Masuk sebagai Guest atau Tamu


35

rata_rata= (20/100*nilai_1)+(30/100*nilai_2)+
(50/100*nilai_3)

Anda mungkin juga menyukai