PSEUDOCODE dan FLOWCHART
Notasi Algoritma
Algoritma dan Dasar Pemrograman
PSEUDOCODE
Pseudo Code
Pseudocode adalah salah satu bentuk penulisan algoritma yang cukup banyak
digunakan, dimana bentuk ini mirip dengan bahasa program. Walaupun mirip
namun namun jelas pseudocode bukanlah bahasa pemrograman.
Mengadopsi beberapa keyword dan struktur bahasa pemrograman, namun
tidak mematuhi sintaks bahasa pemrograman
Tidak ada notasi Pseudo-code yang baku untuk menulis Algoritma.
berupa pengkodean atau penandaan yang menyerupai suatu program
Notasi Pseudo Code, bukanlah suatu bahasa pemrograman
Keuntungan :
Proses translasinya ke kode program menjadi lebih mudah dilakukan, karena
ada korespondensi antara notasi Pseudo-code dan notasi bahasa pemrograman
Contoh
Notasi Deskriptif Notasi Bahasa Pemrograman
Pseudo-code
C++ Pascal
1. Tulis niilai x dan y 1. Write(x,y) Cout << x, y; Write(x,y)
2. Masukan Nilai X ke
dalamY
2. Y X y = x; Y := x;
Cara Menulis Pseudocode (Struktur Pseudocode)
Secara umum penulisan pseudocode terbagi kedalam tiga bagian, sebagai
berikut:
Judul – Pada bagian ini kita menuliskan judul dari suatu
program yang akan dibuat. Biasanya judul diawali dengan kata
“program” atau “algoritma” kemudian diikuti dengan nama
program yang ingin dibuat.
Contoh : program menghitung luas_lingkaran atau program menghitung
gaji_karyawan.
Deklarasi – Pada bagian ini kita bisa menulis semua variabel
yang diinisialisasikan didalam suatu program. Biasanya
menggunakan kata kunci ‘var’ diikuti dengan nama variabel dan
tipe data yang digunakan.
Isi – Bagian ini merupakan bagian utama pada suatu program
dimana terdiri dari perintah program terstruktur baik
berupa kondisional, perulangan dan lainnya.
Contoh penulisan Pseudocode
menghitung luas persegi panjang. Rumus luas persegi
panjang adalah panjang (p) x lebar (l). Jika diketahui:
panjang=6;
lebar=2;
Penyelesaian :
program menghitung_luas_persegi_panjang
deklarasi:
var panjang:lebar:luas:integer;
Deskripsi:
panjang <- 6;
lebar <- 2;
luas <- panjang*lebar;
write (luas);
Contoh : Mencari bilangan terkecil dari dua bilangan yang dimasukkan.
Algoritma : (DESKRIPTIF)
1. Masukkan bil pertama
2. Masukkan bil kedua
3. Jika bil pertama < bil kedua maka kerjakan langkah 4, bila tidak maka
dikerjakan langkah 5.
4. Tampilkan bil pertama
5. Tampilkan bil kedua
Menghitung rata-rata tiga buah data
Algoritma dengan struktur Algoritma dengan
bahasa Natural (Deskriptif) pseudocode
- Baca bilangan a, b, dan c input (a, b, c)
- Jumlahkan ketiga bilangan Jml a+b+c
tersebut Rerata Jml/3
- Bagi jumlah tersebut dengan Output (Rerata)
3
- Tulis hasilnya
Nilai Terbesar Dari 2 Buah Bilangan
deskriptif Pseudo code
Baca bilangan pertama, dan Input bil1, bil2
bilangan kedua if bil1 > bil2, then besar
Bandingkan nilai pertama bil1
dengan nilai kedua. Besar bil2
sehingga di dapat nilai Output(Besar)
terbesar di antara kedua
bilangan tersebut.
Nilai Terbesar Dari 3 Buah Bilangan
deskriptif Pseudo code
Baca bilangan pertama , Input bil1, bil2, bil3
bilangan kedua dan bilangan
ketiga Besar bil1
Bandingkan nilai pertama If bil2 > Besar, then besar
dengan nilai kedua.
bil2
Kemudian yang lebih besar di
antara nilai tersebut di If bil3 > besar, then besar
bandingkan dengan nilai bil3
berikutnya (nilai ke tiga)
sehingga di dapat nilai Output (besar)
terbesar di antara ketiga
variabel tersebut.
Penulisan Pseudocode
Algoritma/program menentukan_bilangan_ganjil_genap
Deklarasi:
var bil:integer;
Deskripsi:
bil 10;
Read (bil)
If (bil mod 2==0) Then
print "Bilangan Genap";
Else print "Bilangan Ganjil";
Endif
FLOWCHART
Flow Chart
• flow chart (diagram alir)
– (menggambarkan urutan langkah-langkah
kegiatan /program mulai dari awal sampai akhir
dengan menggunakan simbol atau gambar
tertentu.)
• Kegunaan : mendesain dan mempresentasikan program
FLOWCHART
• Flowchart lebih baik dibandingkan pseudocode
• Merupakan gambaran dalam bentuk diagram alir dari
algoritma-algoritma dalam suatu program yang menyatakan
arah alur program tersebut
• Disajikan dalam bentuk grafik/gambar
• Dapat membantu programmer maupun orang lain dalam
memahami alur program (apa saja input, proses dan output
dari program)
• Representasi visual, karena itu lebih mudah dipahami
• Jumlah simbol yang digunakan sedikit, karena itu lebih
sederhana dan lebih mudah dipelajari
Tujuan Membuat Flowchat :
• Menggambarkan suatu tahapan penyelesaian
masalah
• Secara sederhana, terurai, rapi dan jelas
• Menggunakan simbol-simbol standar
Model Flowchart
1. System Flowchart
– Yaitu bagan yang memperlihatkan urutan prosedure dan proses dari
beberapa file di dalam media tertentu
– Melihat jenis media penyimpanan yang dipakai dalam pengolahan
data.
– menggambarkan file yang dipakai sebagai input dan output.
– Tidak digunakan untuk menggambarkan urutan langkah untuk
memecahkan masalah namun hanya untuk menggambarkan
prosedur dalam sistem yang dibentuk
2. Program Flowchart
Yaitu bagan yang
memperlihatkan urutan dan
hubungan proses dalam
suatu program.
Dua jenis metode penggambaran
program flowchart :
• Conceptual flowchart,
menggambarkan alur
pemecahan masalah secara
global.
• Detail flowchart,
menggambarkan alur
pemecahan masalah secara
rinci .
Simbol/Lambang Flowchart
Terminator (mulai/selesai)
Input/output
Proses
Decision (percabangan)
Data Flow (Aliran data)
Preparation (pemberian nilai awal suatu
variabel)
Call (memanggil prosedur/fungsi)
Connector (di halaman yg sama
Connector ( di halaman lain)
Kaidah-Kaidah Umum Pembuatan
Flowchart Program
• Dalam pembuatan flowchart Program tidak
ada rumus atau patokan yang bersifat mutlak.
Karena flowchart merupakan gambaran hasil
pemikiran dalam menganalisis suatu masalah
dengan komputer. Sehingga flowchart yang
dihasilkan dapat bervariasi antara satu
pemrogram dengan yang lainnya.
• Namun secara garis besar setiap pengolahan
selalu terdiri atas 3 bagian utama, yaitu:
Input,
Proses pengolahan dan
Output
Untuk pengolahan data dengan komputer, urutan dasar
pemecahan suatu masalah:
• START, berisi pernyataan untuk persiapan peralatan yang
diperlukan sebelum menangani pemecahan persoalan.
• READ, berisi pernyataan kegiatan untuk membaca data dari
suatu peralatan input.
• PROSES, berisi kegiatan yang berkaitan dengan pemecahan
persoalan sesuai dengan data yang dibaca.
• WRITE, berisi pernyataan untuk merekam hasil kegiatan ke
peralatan output.
• END, mengakhiri kegiatan pengolahan.
Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan
flowchart, namun ada beberapa anjuran:
• 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.
• Setiap aliran proses harus ada akhirnya
• Sebuah flowchart diawali dari satu titik START
dan diakhiri dengan END.
Kasus:
• Buatlah sebuah Algoritma dengan
menggunakan flowchart, mencari luas persegi
panjang.
Solusi:
Perumusan untuk mencari luas persegi panjang
adalah: L = p. l
di mana, L adalah Luas persegi panjang, p
adalah panjang persegi, dan l adalah lebar
persegi.
Keterangan 1:
1. Simbol pertama menunjukkan dimulainya sebuah program.
2. Simbol kedua menunjukkan bahwa input data dari p dan l.
3. Data dari p dan l akan diproses pada simbol ketiga dengan
menggunakan perumusan L = p. l
4. Simbol keempat menunjukkan hasil output dari proses dari simbol
ketiga.
5. Simbol kelima atau terakhir menunjukkan berakhirnya program
dengan tanda End.
Latihan
• Buatlah sebuah Algoritma dengan
menggunakan flowchart untuk :
– Menghitung luas Segitiga!
– Menghitung volume tabung π * r * r * t ( π=
3.14 )
Algoritma Menghitung Luas Segitiga
• Analisis :
– Input : a (alas) dan t (tinggi)
– Luas Segitiga = a*t/2
• Algoritma (deskriptif):
– Masukan nilai alas (a) dan nilai tinggi segitiga (t)
– Maka untuk menghitung luas digunakan rumus alas
dengan tinggi yang sudah ditentukan
– Rumus untuk menghitung Luas Segitiga yaitu L =
1/2*a*t
– Nilai L (Luas) akan dicetak sebagai output ke
perangkat output (keluaran)
Flowchart Menghitung Luas Segitiga
Algoritma Mengirim Surat
DESKRIPTIF :
• Ketik atau tulis surat
• Siapkan sampul surat atau amplop
• Masukkan surat ke dalam amplop yang tersedia
• Lem amplop surat dengan baik
• Tuliskan alamat pengiriman surat, jika tidak ingat,
lebih dahulu ambil buku alamat & cari alamat yg
dituju, lalu tulis alamat amplop surat.
• Beli dan tempelkan perangko pada amplop
• Pergi ke kantor pos dan bawa surat utk
diserahkan pd pegawai pos
Flowchart Mengirim Surat
Case (penggunaan Decision dalam
proses)
• Membuat algoritma dengan flowchart untuk
menentukan apakah seorang mahasiswa
tersebut LULUS atau GAGAL berdasar Nilai
Akhir (NA) yang didapat.
• dengan ketentuan : Jika NA >= 70, maka
LULUS, kalau tidak, maka GAGAL.
• Buatlah algoritma dg flowchart untuk
menyelesaikan permasalahan di atas!
Algoritma Menentukan Kelulusan Mahasiswa
• Nama mahasiswa dan nilai (sudah terbaca)
• Buat sebuah keputusan dengan percabangan :
– Kalau mahasiswa mendapat nilai >= 70 maka ket “
lulus”
– Kalau mahasiswa mendapat nilai <70 maka ket
“tidak lulus”
• Data nama, nilai dan keterangan akan
ditampilkan setelah hasil keputusan.
• Buatlah Flowchart Kelulusan Mahasiswa
diatas!
Flowchart Decision/Percabangan