Académique Documents
Professionnel Documents
Culture Documents
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
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.
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)