Algoritma Dan Flowchart
Algoritma Dan Flowchart
Tujuan Pembelajaran
Diharapkan dapat:
1. Mengerti tentang algoritma
2. Membuat algoritma dari suatu permasalahan
3. Mengerti tentang flowchart
4. Membuat flowchart dari suatu permasalahan
Pendahuluan
1. Komputer adalah alat bantu untuk menyelesaikan masalah
2. Dalam menyelesaikan masalah dengan komputer perlu merumuskan langkah-
langkah penyelesaian masalah dalam sekumpulan instruksi
3. sekumpulan instruksi yang dimengerti oleh komputer disebut dengan program
Bahasa Pemrograman
1. Program harus ditulis dalam suatu bahasa yang dimengerti oleh komputer yaitu
dalam bahasa pemrograman, dibedakan menjadi:
Bahasa tingkat rendah (low level language):
Bahasa yang berorientasi ke mesin.
Bahasa tingkat tinggi (high level language):
Bahasa yang berorientasi ke manusia (seperti bahasa inggris).
Contoh bahasa Pascal, bahasa C, dll.
2. Program yang ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam
bahasa mesin (kenal dengan biner digit) dengan menggunakan penerjemah.
Penerjemah:
Interpreter : menerjemahkan baris per baris instruksi. Contoh bahasa Basic.
Compiler : menerjemahkan setelah seluruh instruksi ditulis. Contoh bahasa
Pascal, bahasa C/C++, dll.
Algoritma
Arti umum adalah serangkaian urutan langkah-langkah yang tepat, logis, terperinci,
dan terbatas untuk menyelesaikan suatu masalah yang disusun secara sistematis.
1. Algoritma adalah inti dari ilmu komputer
2. Algoritma adalah urutan-urutan dari instruksi atau langkah-langkah untuk
menyelesaikan suatu masalah
3. Algoritma adalah blueprint dari program
4. Sebaiknya disusun sebelum membuat program
5. Kriteria suatu algoritma:
Ada input dan output
Efektifitas dan efisien
Terstruktur
Contoh:
Algoritma TUKAR ISI BEJANA
Diberikan 2 buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B
berisi larutan berwarna biru. Tukarkan isi kedua bejana itu sedemikian sehingga
bejana A berisi larutan warna biru dan bejana B berisi larutan berwarna merah.
Deskripsi:
1. Tuangkan larutan dari bejana A ke dalam bejana B
2. Tuangkan larutan dari bejana B ke dalam bejana A
Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar.
Langkah di atas tidak logis, hasil pertukaran yang terjadi adalah pertukaran kedua
larutan tersebut.
Untuk itu pertukaran isi dua bejana, diperlukan sebuah tambahan sebagai tempat
penampungan sementara, misalnya bejana C. Maka algoritma untuk menghasilkan
pertukaran yang benar adalah sebagai berikut:
Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana
B berisi larutan berwarna biru. Tukarkan isi kedua bejana itu sedemikian hingga
bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah.
Deskripsi:
1. Tuangkan larutan dari bejana A ke dalam bejana C.
2. Tuangkan larutan dari bejana B ke dalam bejana A.
3. Tuangkan larutan dari bejana C ke dalam bejana B.
Notasi Algoritma:
1. Penulisan algoritma tidak tergantung dari spesifikasi bahasa pemrograman dan
komputer yang mengeksekusinya. Notasi algoritma bukan notasi bahasa
pemrograman tetapi dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
2. Notasi algoritma dapat berupa:
Uraian kalimat deskriptif (narasi):
Contoh:
Algoritma kelulusan mahasiswa
Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama
dengan 60 maka mahasiswa tersenut dinyatakan lulus, jika nilai lebih kecil dari 60
maka dinyatakan tidak lulus.
Deskripsi:
Baca nama dan nilai mahasiswa
Jika nilai >= 60 maka
Keterangan = lulus
Tetapi jika salah
Keterangan = tidak lulus
Tulis nama dan keterangan.
Flowchart
1. Flowchart adalah bagan-bagan yang mempunyai arus menggambarkan langkah-
langkah penyelesaian suatu masalah
2. Merupakan cara penyajian dari suatu algoritma
3. Ada 2 macam flowchart:
System flowchart:
Urutan proses dalam system dengan menunjukkan alat media input,
output serta jenis penyimpanan dalam proses pengolahan data.
Program flowchart:
Urutan instruksi yang digambarkan dengan symbol tertentu untuk
memecahkan masalah dalam suatu program.
Simbol-simbol Flowchart
1. Flow Direction Symbols (simbol penghubung alur)
2. Processing Symbols (simbol proses)
3. Input-Output Symbols (simbol input-output)
Pseudocode:
1. Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus jika tidak maka dinyatakan
tidak lulus.
Deklarasi:
Nama : String
Nilai : Integer
Keterangan : String
Deskripsi:
Read (nama, nilai)
if nilai >= 60 then
Keterangan = 'lulus'
else
Keterangan = 'tidak lulus'
write (nama, keterangan)
Contoh Pseudocode:
1. Algoritma Luas_Keliling_Lingkaran (ini merupakan judul algoritma)
{
Menghitung luas dan keliling untuk ukuran jari-jari tertentu. Algoritma menerima
masukkan jari-jari lingkaran, menghitung luas dan kelilingnya, dan mencetak luas
lingkaran ke piranti keluaran
} (ini spesifikasi algoritma)
2. Deklarasi
const phi = 3.14 {nilai konstanta phi}
R : real {jari-jari lingkaran}
Luas : real {luas lingkaran}
Keliling : real {keliling lingkaran}
3. Deskripsi
Read (R)
Luas = phi * R * R
Keliling = 2 * phi * R
Write (luas, keliling)
Algoritma dan Flowchart
Waktu itu ada request yang minta diajarin tentang dasar pemrograman. Menurut saya, dasar
dari sebuah program adalah alur atau biasa disebut flow. Nah, kali ini saya ingin mencoba
memberi contoh dari flowchart mulai dari kehidupan sehari-hari sampai dalam sebuah
program.
j. Jika ya maka jadilah segelas kopi dengan rasa manis yang tepat.
e. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan ganjil tetapi bila
sisa hasil bagi tidak sama dengan 0 maka bilangan itu adalah bilangan genap.
3. a. Masukkan bilangan pertama yang selanjutnya disebut x