Anda di halaman 1dari 29

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  
•  So#ware  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  restoraCon  and  
reducCon)    
•  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);
Algoritma Menghitung Luas
Segitiga ?
Flowchart
15

—  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
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still
appears, you may have to delete the image and then insert it again.

jawaban
ujian

Koreksi

Daftar Koreksi File


Data utama Tabel Siswa
ujian

Periksa
Ujian

Laporan
File
Hasil
siswa
Ujian
lulus
16
Contoh  Program  Flowchart  
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still
appears, you may have to delete the image and then insert it again.

Start

Print Judul

READ
Data

Ya
Akhir
End
file ?

Tidak

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

Tidak

17
Simbol-simbol Flowchart
18

—  Flow Direction Symbols (Simbol penghubung


alur)
—  Processing Symbols (Simbol proses).
—  Input-output Symbols (Simbol input-output)
Flow Direction Symbols
19
Processing Symbols
20
Processing Symbols - continued
21
Input-output Symbols
22
Input-output Symbols - continued
23
Pembuatan Flowchart
24

—  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
25

—  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
27

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
29

1.  Buatlah algoritma untuk menghitung Kecepatan


sebuah kendaraan.
2.  Buatlah flowchart dari algoritma pada soal no 1
diatas.

Anda mungkin juga menyukai