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.
Ciri Penting
Algoritma
1.
Algoritma harus berhenti setelah menjalankan sejumlah langkah terbatas.
2.
Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua
(ambiguitas).
3.
Algortima memiliki nol atau lebih masukan.
4.
Algoritma memiliki nol atau lebih keluaran.
5.
Algoritma harus efektif (setiap langkah sederhana sehingga dapat dikerjakan
dalam waktu yang masuk akal).
Memrogram
dan Bahasa Pemrograman:
1.
Belajar memrogram adalah belajar tentang metode pemecahan masalah, kemudian
menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami.
2.
Belajar bahasa pemrograman adalah memakai suatu bahasa, aturan, tata bahasanya,
instruksi-instruksinya, tata cara pengoperasian compiler-nya untuk membuat
program yang ditulis dalam bahasa itu saja.
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.
Tahapan
Pembuatan Program:
1.
Mendefinisikan masalah dan menganalisanya. Mencangkup : tujuan pembuatan,
parameter yang digunakan, fasilitas yang disediakan, algoritma yang diterapkan,
dan bahasa pemrograman yang digunakan.
2.
Merealisasikan dengan langkah-langkah sebagai berikut:
Contoh
Algoritma:
1.
Mengirim surat kepada teman:
·
Tulis surat pada secarik kertas surat
·
Ambil sampul surat
·
Masukkan surat ke dalam sampul
·
Tutup sampul surat dengan perekat
·
Jika kita ingat alamat teman tersebut, maka tulis alamat surat pada sampul
·
Jika tidak ingat, lihat buku alamat, kemudian tulis alamat surat pada sampul
·
Tempel prangko pada sampul
·
Bawa sampul ke kantor pos untuk diposkan
2.
Menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap:
·
Masukkan sebuah bilangan sembarang
·
Bagi bilangan tersebut dengan 2
·
Hitung sisa hasil bagi pada langkah 2
·
Bila sisa hasil sama dengan 0, maka bilangan itu adalah bilangan genap
·
Jika hasil bagi sama dengan 1, maka bilangan itu adalah bilangan ganjil
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.
Contoh
program Flowchart
Simbol-simbol
Flowchart
1.
Flow Direction Symbols (simbol penghubung alur)
2.
Processing Symbols (simbol proses)
3.
Input-Output Symbols (simbol input-output)
Tabel
Simbol-simbol Flowchart
Pembuatan
Flowchart
1.
Tidak ada kaidah yang baku
2.
Flowchart = gambaran hasil analisa suatu masalah
3.
Flowchart dapat bervariasi antara satu pemrograman dengan pemrograman lainnya.
4.
Secara garis besar ada 3 bagian utama:
·
Input
·
Proses
·
Output
5.
Hindari pengulangan yang tidak perlu dan logika yang berbelit sehingga jalannya
proses menjadi singkat
6.
Jalannnya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk
memperjelas.
7.
Sebuah Flowchart diawali dari satu titik START dan diakhiri dengan End.
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)
Aturan
Penulisan Teks Algoritma
1.
Judul Algoritma
Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang
algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan
oleh algoritma tersebut.
2.
Deklarasi
Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama
tersebut dapat berupa nama tetapan, peubah, tipe, prosedure, dan fungsi.
3.
Deskripsi
Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis
dengan menggunakan notasi yang akan dijelaskan selanjutnya.
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)
Materi ini
saya dapat dari pembelajaran kuliah waktu semester 1. Baru sempat saya posting.
Mohon maaf
jika posting ini ada beberapa yang sama dengan sumbernya.
ü Eka
Putra
ü
Tidak ada komentar:
Posting Komentar