LOGIKA DAN ALOGARITMA II ppt

Pertemuan Ke-1

PENGERTIAN DASAR
LOGIKA dan ALGORITMA

Benarkah komputer adalah
sebuah mesin yang “pintar” ???
Kalo kalian jawab YA maka jawaban
kalian tidak sepenuhnya salah karena
komputer merupakan alat bantu
menyelesaikan masalah

Dapatkah Komputer menyelesaikan setiap masalah
yang diberikan???

masalah

solusi

Algoritma dan Pemrograman


Orang harus merumuskan langkah-langkah
penyelesaian masalah itu dalam suatu
runtunan instruksi.

Sekumpulan instruksi yang merupakan
penyelesaian masalah itu dinamakan PROGRAM

masalah

algoritma
masalah

Program
komputer

solusi

Algoritma dan Pemrograman

Bagaimanakah Komputer menyelesaikan

masalah???
Program dimasukkan ke dalam komputer,
komputer mengerjakan instruksi-instruksi di
dalam program, lalu menghasilkan hasil atau
keluaran yang diinginkan

masalah

Program
komputer

solusi

Algoritma dan Pemrograman

Bagaimanakah Program dapat
dilaksanakan oleh komputer???

Program harus ditulis dalam
suatu bahasa yang dimengerti

oleh komputer

Langkah-langkah pembuatan
program
1.
2.
3.
4.

Mendefisikan permasalahan
Membuat rumusan pemecahan masalah
Implementasi
Menguji coba dan membuat dokumentasi

TAHAPAN PELAKSANAAN PROGRAM OLEH
KOMPUTER
ALGORITMA

TRANSLASI
PROGRAM DALAM BAHASA

TINGKAT TINGGI
KOMPILASI
PROGRAM DALAM
BAHASA MESIN
INTERPRETASI OLEH CPU
OPERASI

(BACA, TULIS, HITUNG, PERBANDINGAN, dsb)

Apakah Algoritma itu?
Algorism  algorithm
Asal kata Algoritma berasal dari nama

Abu Ja’far Mohammed Ibnu Musa alKhowarizmi, ilmuan Persia yang
menulis kitab al jabr w’al-muqabala
(rules of restoration and reduction)
sekitar tahun 825 M

Apakah Algoritma itu?
Urutan langkah-langkah untuk memecahkan


masalah
Urutan logis pengambilan putusan untuk
memecahkan masalah
 urutan langkah logis, berarti algoritma harus mengikuti

suatu urutan tertentu, tidak boleh melompat-lompat.

Alur pemikiran dalam menyelesaikan suatu

pekerjaan yang dituangkan secara tertulis.
 alur pikiran, yang artinya algoritma seseorang dapat

berbeda dari algoritma orang lain.
 tertulis, yang artinya dapat berupa kalimat, gambar,
atau tabel tertentu.

algoritma independen terhadap bahasa
dan mesin komputer
Analogi:

Sebuah resep kue ditulis dalam bahasa apa pun
tetap sama, bahasa inggris,Prancis, Indonesia,
Jepang dan sebagainya. Kue yang dihasilkan
tetap sama (dengan catatan semua aturan
pada resep diikuti)

Sifat - Sifat Algoritma
Aspek Penting Algoritma :
Finite (Berakhir ) algoritma harus berhenti

setelah mengerjakan sejumlah langkah terbatas
Definite (Terstruktur)  setiap langkah
didefinisikan secara tepat, tidak boleh
membingungkan (ambigu)
Input  sebuah algoritma memiliki nol/lebih
input sebelum dijalankan
Output  algoritma memiliki satu/lebih output,
yang biasanya bergantung kepada input
Effective  setiap algoritma diharapkan
memiliki sifat efektif. (setiap langkah harus

sederhana dan sehingga dapat dikerjakan dalam
waktu yang masuk akal)

Contoh: (1)
Sebuah prosedur ketika
surat kepada teman:

akan

mengirimkan

Tulis surat pada secarik kertas surat
Ambil sampul surat atau amplop
Masukkan surat ke dalam amplop
Tutup amplop surat dengan lem perekat
Tulis alamat surat yg dituju, jika tdk ingat, lebih
dahulu ambil buku alamat & cari alamat yg
dituju, lalu tulis alamat tsb pd amplop surat.
6. Tempelkan perangko pada amplop surat
7. Bawa surat ke kantor pos utk diserahkan pd

pegawai pos atau menuju ke bis surat untuk
memasukkan surat ke dlm kotak/bis surat.
1.
2.
3.
4.
5.

Contoh: (2)
Sebuah prosedur untuk masalah menentukan
akar kuadrat dari suatu bilangan Bulat Positif yg
di Input :
1. Baca bilangan Bulat Positif yg diinput, sebut
2.
3.
4.
5.
6.

saja sebagai A

Dinyatakan Nilai B adalah 0
Hitung Nilai C yg berisikan Nilai B dikalikan
Nilai B
Jika Nilai C sama dengan Nilai A, maka Nilai B
adalah Akar dari Nilai A, lalu stop.
Jika tidak, maka Nilai B akan bertambah 1
Kembali ke langkah pada No. 3

Penulisan Algoritma
Menggunakan bahasa natural (Bahasa

manusia: Indonesia, Inggris)
Kelemahannya masih sering membingungkan
(ambigu) / sulit dipahami.

Menggunakan Flowchart
Baik karena alur algoritma dapat dilihat secara visual,
tetapi repot pembuatannya jika algoritma panjang

Menggunakan Pseudocode

Sudah dekat dengan bahasa pemrograman, tetapi
sulit dimengerti oleh orang yang belum tahu
pemrograman

Tahap Analisa Algoritma
1. Bagaimana merencanakan
2.
3.
4.
5.

algoritma
Bagaimana menyatakan suatu
algoritma (menulis algoritma)
Bagaimana validitas suatu
algoritma.
Bagaimana Menganalisa suatu
Algoritma.
Bagaimana Menguji Program dari
suatu Algoritma


Ad.1.
Bagaimana merencanakan
algoritma
Dengan Mendefinisikan masalah.
Contoh : Permasalahan menghitung luas
lingkaran, dengan data yang diketahui
adalah diameter lingkaran.
Rumus : ∏ . r2 dengan Phi = 3.14 atau
22/7.

Ad.2.
Bagaimana menyatakan suatu
algoritma
(menulis algoritma)
 Dengan psudocode

Suatu cara penulisan algoritma agar ide dan
logika dari algoritma dapat
disampaikan/diekspresikan menggunakan
gaya bahasa pemrograman tertentu.
Phi  3.14
Input (diameter)
Radius  diameter / 2
Luar  phi * radius * radius
Output (Luas)
End

 Dengan flowchart /

diagram alir

Program Flowchart,
yaitu bagan yang
menggambar-kan
urutan logika dari
suatu prosedur
pemecahan masalah.

Start

Phi = 3.14

Input
(diameter)

Radius = diameter/2
Luas = phi * radius * radius

Output
Luas
Stop

Tahap Proses Uji Algoritma
1. Pengujian Tahap Debuging

Untuk mengecek kesalahan program, Baik
sintaksis maupun logika.
2.
Pengujian Tahap Profiling
Untuk menentukan waktu tempuh dan
banyak nya memori program yang
digunakan.

Analisis Suatu Algoritma
Untuk melihat effisiensi dan efektifitas dari
suatu algoritma, dapat dilihat dari:
1. Waktu Tempuh dari Suatu Algoritma
2. Jumlah memori yang digunakan
 Hal-hal

yang dapat mempengaruhi
waktu tempuh adalah :
1.
2.
3.
4.

Banyaknya langkah.
Besar dan jenis input data.
Jenis Operasi.
Komputer dan kompilator

Suatu Algoritma yg terbaik (The
Best): “Suatu algoritma harus
menghasilkan output yg tepat guna
(efektif) dlm waktu yg relatif singkat
& penggunaan memori yg relatif
sedikit (efesien) dgn langkah yg
berhingga & prosedurnya berakhir
baik dlm keadaan diperoleh suatu
solusi ataupun tdk ada solusinya.“

TUGAS & LATIHAN

Tugas-1
 Buatlah

algoritma dengan
bahasa
natural
(bahasa
pseudocode )

menggunakan
sehari-hari
/

1.

Buat langkah untuk melakukan penggantian
ban mobil yang pecah ( tanpa ada masalah /
syarat ).

2.

Dari Soal diatas dikembangkan kembali, mis :
bila ban serep kempes atau ban serep bocor.

Tugas-2
 Buatlah algoritma (dengan bahasa

natural):
1. Menampilkan bilangan ganjil dari 1 sampai

dengan 10.
2. Menghitung jumlah deret : 1 + 2 + 3 + 4 +

.... + N
N = jumlah maksimum suatu nilai yang
dimasukkan.