Ilmu Komunikasi
Universitas Gunadarma
Dr. Lily Wulandari
Objectives
Setelah menyelesaikan bab ini,
anda diharapkan dapat:
• Mengerti tentang algoritma.
• Membuat algoritma dari suatu permasalahan.
• Mengerti tentang flowchart.
• Membuat flowchart dari suatu
permasalahan.
ALGORITMA
Algoritma
Adalah inti dari ilmu
komputer.
Algoritma adalah
urutan langkah-
langkah logis
penyelesaian
masalah yang
disusun secara
sistematis dan logis.
Algoritma
Langkah-langkah dalam
algoritma harus dapat
ditentukan bernilai benar
atau salah.
Algoritma
Algoritma adalah blueprint dari
program.
Sebaiknya disusun sebelum membuat
program.
Kriteria suatu algoritma:
– Ada input dan output
– Efektif dan efisien
– Terstruktur
Algoritma Dalam Kehidupan
Algoritma adalah jantung ilmu komputer atau
informatika. Banyak cabang ilmu komputer
yang diacu dalam terminologi algoritma.
Algoritma juga digunakan dalam kehidupan
sehari-hari, contohnya resep makanan. Di
dalam resep makanan terdapat langkah-
langkah yang merupakan algoritma.
Algoritma dalam Kehidupan
Algoritma dalam Kehidupan
Kriteria Algoritma
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.
Kriteria Algoritma
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
Jenis Proses Algoritma
Sequence Process: instruksi dikerjakan
secara sekuensial, berurutan.
Selection Process: instruksi dikerjakan jika
memenuhi kriteria tertentu
Iteration Process: instruksi dikerjakan selama
memenuhi suatu kondisi tertentu.
Concurrent Process: beberapa instruksi
dikerjakan secara bersama.
Sifat Algoritma (Umum)
Tidak menggunakan simbol atau sintaks
dari suatu bahasa pemrograman
Tidak tergantung pada suatu bahasa
pemrograman
Notasi-notasinya dapat digunakan untuk
seluruh bahasa manapun
Contoh Algoritma 1
Mengirim surat kepada teman:
1. Tulis surat pada secarik kertas surat.
2. Ambil sampul surat.
3. Masukkan surat ke dalam sampul.
4. Tutup sampul surat menggunakan perekat.
5. Jika kita ingat alamat teman tersebut, maka
tulis alamat pada sampul surat.
6. Jika tidak ingat, lihat buku alamat, kemudian
tulis alamat pada sampul surat.
7. Tempel perangko pada surat.
8. Bawa surat ke kantor pos untuk diposkan.
Contoh Algoritma 2
Mengupas Kentang untuk Makan Malam
Ibu Tati mengambil kantong kentang
dari rak
Ibu Tati mengambil panci dari almari
Ibu Tati mengupas kentang
Ibu Tati mengembalikan kantong
kentang dari rak
Contoh Algoritma 2 (lanjt)
Ada hal yang “tergantung”pada sesuatu:
Ibu Tati mengambil kantong kentang dari rak
Ibu Tati mengambil panci dari almari
Luas ←P * L
Tulis Luas
Pseudo Code
Kode atau tanda yang menyerupai
(pseudo) program atau merupakan
pejelasan cara menyelesaikan suatu
masalah.
Pseudo-code sering digunakan oleh
manusia untuk menuliskan algoritma
Contoh
Problem:mencari bilangan terbesar dari dua bilangan
yang diinputkan
Contoh Algoritma:
Masukkan bilangan pertama
Input b
print a
print b
Perbandingan
Algoritma Pseudo-code
Nilai A ditambah dengan 5 A ←A + 5
Cetak nilai A bila lebih besar dari 10 IF A > 10 THEN PRINT A
Dari dua bilangan A dan B, cari bilangan IF A > B THEN PRINT A ELSE PRINT
yang terbesar B
Bagian Program
Suatu program pada dasarnya terdiri dari 3
bagian:
Input: bisa ada, bisa tidak
Proses
Output (printf)
Simbol-simbol Flowchart
Simbol-simbol Flowchart – Cont.
Simbol-simbol Flowchart – Cont.
Simbol-simbol Flowchart – Cont.
Simbol-simbol Flowchart – Cont.
Pembuatan Flowchart
Tidak ada kaidah yang baku.
Flowchart = gambaran hasil analisa suatu masalah
Flowchart dapat bervariasi antara satu pemrogram
dengan pemrogram lainnya.
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.
Pembuatan Flowchart – cont.
Selalu dimulai dengan BEGIN:
Begin
Jangan lupa
menggambar garis
End
Pembuatan Flowchart – cont.
Input / Output Begin
Input/output
Input
Anda dpt melakukan
perhitungan di dlm proses
Proses
Pembuatan Flowchart – cont.
Begin
Input
Output End
Contoh Flowchart
Problem:
Menghitung luaspersegi
panjang
Algoritma
Masukkanpanjang(p)2.Mas
ukkanlebar(l)3.Hitungluas(L)
, yaitupanjangkali
lebar4.Cetakluas(L
Flowchart bilangan ganjil 1 -100
Contoh Flowchart
Exercise
Bagaimana algoritma untuk menukar isi
dari dua gelas?
Menghitung usia berdasarkan tahun
(saja) lahir dan tahun (saja) sekarang
Input: Tahun lahir (tl), Tahun sekarang (ts)
Proses : Umur = ts –tl
Output : Cetak Umur
Exercise
Buatlah flowchart untuk menampilkan deret
bilangan berikut :
1, 1, 2, 3, 5, 8, 13
Buatlah flowchart untuk menghitung konversi
suhu dari fahrenheit ke celcius dan reamur
dengan nilai fahrenheit diinput.