Anda di halaman 1dari 31

TEORI ALGORITMA

Tujuan
� Tujuan Instuksional Umum
“ Mahasiswa mampu mendefinisikan Algoritma dan Pemrograman serta
mengenal berbagai jenis bahasa pemrograman“
� Tujuan Instruksional khusus :
◦ Mengenal asal pengertian algoritma dan pemrograman
◦ Mengenal jenis penulisan logika pemrograman
◦ Mengenal berbagai tata cara penulisan logika
◦ Mampu menyebutkan dan mengelompokan bahasa pemrograman
kedalam tingkatan bahasa pemrograman
◦ Mampu menyebutkan bahasa pemrograman dan kegunaannya

2
PENEMU ALGORITMA
Perangko dari Rusia pada Gambar di
samping ini bergambar seorang pria
dengan nama Muhammad ibn Mūsā
al-Khwārizmī. Bagi kalian yang
sedang berkecimpung dalam dunia
komputer maka seharusnya mengetahui
siapa orang di samping ini. Dia adalah
seorang ilmuwan Islam yang
karyakaryanya dalam bidang
matematika, astronomi, astrologi dan
geografi banyak menjadi dasar
perkembangan ilmu modern. Dan dari
namanya istilah yang akan kita pelajari
dalam bab ini muncul. Dari Al-
Khawarizmi kemudian berubah menjadi
algorithm dalam Bahasa Inggris dan
diterjemahkan menjadi algoritma
dalam Bahasa Indonesia.
Analogi 1:
�Ilustrasi :

Bagaimana
caranya agar mobil
dan pengemudi
sampai di tujuan

4
Analogi 1:

�Dari gambar ilustrasi


◦ Berapa kemungkinan penyelesaian jalan yang dilalui ? (buat
tanda panah sebagai petunjuk arah)
◦ Anggap satu kemungkinan yang dipilih, tuliskan tahapan yang
harus dilalui
◦ Dari tahapan yang dibuat apakah menyelesaikan masalah ?

5
Analogi 2:
�Jika seseorang ingin mengirim surat kepada
kenalannya di tempat lain, langkah yang harus
dilakukan adalah:

Langkah :
� Menulis surat
� Surat dimasukkan ke dalam amplop tertutup
� Amplop dikasih alamat penerima dan pengirim
� Amplop ditempeli perangko secukupnya.
� Pergi ke Kantor Pos terdekat untuk mengirimkannya
Apa Itu Algoritma ?
● Definisi :
⚪Urutan langkah-langkah untuk memecahkan
masalah yang disusun secara sistematis dan
logis.
⚪Kamus Besar Bahasa Indonesia:
Algoritma adalah urutan logis pengambilan
putusan untuk pemecahan masalah.
● Algoritma dibutuhkan untuk memerintah
komputer mengambil langkah-langkah
tertentu dalam menyelesaikan masalah.
Apa Itu Program/Pemrograman?

Definisi
● Kumpulan instruksi-instruksi tersendiri
yang biasanya disebut source code yang
dibuat oleh programmer (pembuat
program).
● Program : Realisasi dari Algoritma.

Program = Algoritma + Bahasa


Pengertian Algoritma/Pemrograman
�Dari pertanyaan yang diajukan, ada suatu hipotesa :
◦ Untuk menyelesaikan suatu permasalahan pasti harus
memiliki alur yang jelas dan tepat.
◦ Dari alur yang dibuat pasti susunan / tahapan tersusun
secara sistematis dan hirarkis
◦ Susunan sistematis dan hirarkis pasti dapat
menyelesaikan masalah tertentu

�Keyakinan yang didapat :


◦ Setiap menyelesaikan masalah harus menggunakan
cara-cara sistematis, terstruktur, dan hirarkis
◦ Cara-cara tersebut harus bisa dituliskan secara benar
dan masuk akal. (Metode Ilmiah)

9
Mengapa Algoritma ?

● Pembuatan atau penulisan algoritma tidak


tergantung pada bahasa pemrograman
manapun.
● Notasi algoritma dapat diterjemahkan ke
dalam berbagai bahasa pemrograman.
● Apapun bahasa pemrogramannya, output
yang akan dikeluarkan sama karena
algoritmanya sama.
Syarat Algoritma Baik?

● Tingkat kepercayaannya tinggi (realibility)


Hasil yang diperoleh dari proses harus berakurasi
tinggi dan benar.
● Pemrosesan yang efisien (cost rendah)
Proses harus diselesaikan secepat mungkin dan
frekuensi kalkulasi yang sependek mungkin.
● Sifatnya general
Bukan sesuatu yang hanya untuk menyelesaikan satu
kasus saja, tapi juga untuk kasus lain yang lebih
general.
● Bisa dikembangkan (expandable)
Haruslah sesuatu yang dapat kita kembangkan lebih
jauh berdasarkan perubahan requirement yang ada.
● Mudah dimengerti
Siapapun yang melihat, dia akan bisa memahami
algoritma Anda. Susah dimengertinya suatu program
akan membuat susah di-maintenance (kelola).
● Portabilitas yang tinggi (portability)
Bisa dengan mudah diimplementasikan di berbagai
platform komputer.
● Precise (tepat, betul, teliti)
● Efektif
Tidak boleh ada instruksi yang tidak mungkin dikerjakan
oleh pemroses yang akan menjalankannya.
● Harus terminate
Jalannya algoritma harus ada kriteria berhenti.
● Output yang dihasilkan tepat.
Pengertian Algoritma dan Pemrograman

Bagaimana karateristik komputer ?

Komputer terdiri dari rangkaian elektronik IC, Kawat


Tembaga, mainboard, dll

Terdiri dari ribuan transistor (tergabung dalam IC) yang


berisikan gerbang-gerbang logika (AND,OR, NAND, NOR, dll)

Eksekusi dipicu dari adanya masukan (input) listrik berkisar 5 volt


dan berupa TRUE / FLASE

Aliran data berupa dijit biner 1 dan 0, yang tersusun sesuai instruksi

Instruksi dibuat secara sistematis dan hirarkis, dan masuk akal (sesuai logika)

Question :
Bagaimana agar instruksi dapat dimengerti dan bisa menghasilkan keluaran
(output) sesuai keinginan ?

14
Pengertian Algoritma dan Pemrograman
� Answer :
◦ Harus ada instruksi yang dimengerti oleh komputer
◦ Komputer hanya terdiri dari rangkaian elektronik, karena itu hanya
mengerti nilai 1 dan 0
◦ Nilai 1 dan 0, dapat berupa rangkaian instruksi jika disusun dengan
susunan yang sistematis dan masuk akal untuk menyelesaikan masalah
tertentu
◦ Susunan masuk akal dikenal dengan istilah urutan instruksi bahasa yang
dikenal oleh komputer.
◦ Karena itu pasti komputer punya bahasa, dan kita harus membuat
bahasa yang dimengerti oleh komputer.
◦ Bahasa tersebut dikenal dengan istilah bahasa pemrograman.
◦ Program komputer harus dibuat dengan urutan logika yang benar dan
sesuai dengan masalah yang ingin diselesaikan.

15
Pengertian Algoritma dan Pemrograman

Urutan logika untuk Istila


h Algoritma
menyelesaikan masalah tertentu
Diterjemahkan
oleh bahasa
pemrograman
Contoh :
PASCAL, C,
DELPHI, dll

Hasi
l Instruksi yang dikenal oleh
komputer

16
Langkah Pembuatan Program

Mendefinisikan masalah
a. Kondisi awal, yaitu input yang tersedia.
b. Kondisi akhir, yaitu output yang diinginkan.
c. Data lain yang tersedia.
d. Operator yang tersedia.
e. Syarat atau kendala yang harus dipenuhi.
Langkah Pembuatan Program

Buat Algoritma dan Struktur Cara


Penyelesaian

• Jika masalahnya kompleks, maka dibagi ke


dalam modul-modul
Langkah Pembuatan Program

Menulis program

●Pilihlah bahasa yang mudah dipelajari, mudah


digunakan, dan lebih baik lagi jika sudah dikuasai,
memiliki tingkat kompatibilitas tinggi dengan
perangkat keras dan platform lainnya.
Langkah Pembuatan Program

Mencari Kesalahan
a. Kesalahan sintaks (penulisan program).
b. Kesalahan pelaksanaan: semantik, logika, dan
ketelitian..
Langkah Pembuatan Program

● Uji dan Verifikasi Program


● Dokumentasi Program
● Pemeliharaan Program
STRUKTUR PENULISAN
ALGORITMA

Setiap Algoritma akan selalu terdiri dari tiga


bagian yaitu :
●Judul (Header)
●Kamus
●Algoritma
Header (Judul)

Judul adalah bagian teks algoritma yang


digunakan sebagai tempat mendefinisikan
nama dengan menentukan apakah teks
tersebut adalah program, prosedur, fungsi.
Kamus (Deklarasi)

Kamus adalah bagian teks algoritma sebagai


tempat untuk mendefinisikan :
●Nama type
●Nama konstanta
●Nama variabel
●Nama fungsi
●Nama prosedur.
Algoritma (Deskripsi)

Algoritma adalah bagian inti dari suatu


algoritma yang berisi instruksi atau
pemanggilan aksi yang telah didefinisikan.
PENYAJIAN ALGORITMA

Bentuk penyajian untuk algoritma dibagi


menjadi 3 (tiga) bentuk penyajian, yaitu :
● Algoritma dengan struktur Bahasa
Indonesia
● Algoritma dengan Pseudocode
● Algoritma dengan Flowchart
Struktur Bahasa Indonesia

Sifat: Umum
● Tidak menggunakan simbol atau sintaks dari suatu
bahasa pemrograman.
● Tidak tergantung pada suatu bahasa
pemrograman.
● Notasi-notasinya dapat digunakan untuk seluruh
bahasa manapun.
Struktur Bahasa Indonesia

Contoh : Menghitung rata-rata tiga buah data


Algoritma dengan struktur bahasa Indonesia :
1) Baca bilangan a, b, dan c
2) Jumlahkan ketiga bilangan tersebut
3) Bagi jumlah tersebut dengan 3
4) Tulis hasilnya
Pseudo-Code

Penyajian algoritma dengan pseudocode


berarti menggunakan kode yang mirip
dengan kode pemrograman yang
sebenarnya. Pseudocode lebih rinci dari
English/Indonesia Structure.
Pseudo-Code

Contoh (1) : Menghitung rata-rata tiga


buah data

Algoritma dengan struktur pseudocode :


1) input (a, b, c)
2) Jml = a+b+c
3) Rerata = Jml/3
4) Output (Rerata)
Daftar Pustaka
� Jajat Sudrajat, PENGANTAR ALGORITMA DAN IMPLEMENTASI BAHASA PASCAL,
http://www.google.co.id/url?sa=t&rct=j&q=syarat%20algoritma%20yang
%20baik&source=web&cd=1&ved=0CBcQFjAA&url=http%3A%2F
%2Fyusufhdc.edublogs.org%2Ffiles%2F2010%2F01%2FPENGANTAR-
ALGORITMA_adzet.ppt&ei=K2-FTryKEOqtiQfYuqCSDw&usg=AFQjCNFR-
bfs2ySV6zumBAvRI1tOwM-pvw&cad=rja

Anda mungkin juga menyukai