Kusnawi, S.Kom, M -...

18
Kusnawi, S.Kom, M.Eng

Transcript of Kusnawi, S.Kom, M -...

Page 1: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Kusnawi, S.Kom, M.Eng

Page 2: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Algoritma adalah jantung ilmu komputer atau informatika. Banyak

cabang ilmu komputer yang diacu dalam terminologi algoritma.

Namun, jangan beranggapan algoritma selalu identik dengan ilmu

komputer saja. Dalam kehidupan sehari-haripun banyak terdapat

proses yang dinyatakan dalam suatu algoritma.

Secara umum, pihak (benda) yang mengerjakan proses disebut

pemroses (processor). Pemroses tersebut dapat berupa manusia,

komputer, robot atau alat-alat elektronik lainnya.

Pemroses melakukan suatu proses dengan melaksanakan atau

“mengeksekusi” algoritma yang menjabarkan proses tersebut.

Melaksanakan Algoritma berarti mengerjakan langkah-langkah di

dalam Algoritma tersebut. Pemroses mengerjakan proses sesuai

dengan algoritma yang diberikan kepadanya.

Page 3: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Program adalah kumpulan instruksi komputer

Metode dan tahapan sistematis dalam program adalah algoritma

Program ini ditulis dengan menggunakan bahasa pemrograman.

Jadi bisa kita sebut bahwa program adalah suatu implementasi

dari bahasa pemrograman.

Program = Struktur data + Algoritma

Page 4: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak
Page 5: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Penulisan algortima tidak tergantung pada bahasa pemrograman

manapun, artinya penulisan algoritma adalah independen dari

bahasa pemrograman dan komputer yang melaksanakannya.

Notasi algoritmik dapat diterjemahkan ke dalam berbagai bahasa

pemrograman.

Apapun bahasa pemrograman yang akan dipakai, output yang

dihasilkan sama dengan berdasarkan algoritma yang sama.

Page 6: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

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.

Finiteness (ada batas): algoritma harus memiliki titik

berhenti (stopping role).

Effectiveness(tepat dan efisien): algoritma sebisa

mungkin harus dapat dilaksanakan dan efektif

Page 7: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

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.

Page 8: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Mudah dimengerti

Siapapun yang melihat, dia akan bisa memahami algoritma anda.

Susah dimengertinya suatu program akan membuat susah di

maintenance (dikelola).

Portabilitas yang tinggi (Portability)

Bisa dengan mudah diimplementasikan di berbagai platform komputer.

Page 9: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

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.

Page 10: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

1. Mendefinisikan Masalah Pada langkah ini masalah akan ditentukan terlebih dahulu, kemudian

apa saja yang harus dipecahkan dengan komputer. Kemudian

ditentukan masukan dan keluarannya.

2. Menentukan Solusi Setelah masalah didefiniskan dengan jelas, masukan apa diberikan

sudah jelas, keluaran apa yang diinginkan juga sudah jelas, jalan

selanjutnya adalah mencari jalan bagaimana masalah tersebut

diselesaikan.

Apabila masalahnya terlalu komplek, biasanya harus membaginya

kedalam beberapa modul kecil agar lebih mudah diselesaikan.

Page 11: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

4. Menulis Program Pada langkah ini, akan dimulai penulisan kode program untuk

memecahkan masalah. Agar komputer dapat memahami program yang

disusun dengan suatu bahasa pemrograman, maka dibutuhkan suatu

penterjemah, yaitu interpreter atau compiler.

3. Memilih Algoritma Langkah ini merupakan salah satu langkah penting dalam pemrograman

komputer, karena pemilihan algoritma yang salah akan menyebabkan

program memiliki unjuk kerja yang kurang baik. Algoritma dapat disajikan

dalam bentuk kata-kata (english structure – Indonesia), Pesoudocode dan

Flowchart(bagan)

Page 12: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Interpreter

Interpreter berasal dari kata to interpret yang berarti menerjemahkan atau

mengartikan. Interpreter merupakan penterjemah bahasa pemrograman

yang menerjemahkan instruksi demi instruksi pada saat eksekusi

program. Pada saat menerjemahkan, jika ditemukan kesalahan maka

interpreter akan menampilkan pesan kesalahan dan proses eksekusi

program akan langsung terhenti pada saat itu juga.

Compiler

compiler dari kata to compile yang berarti menyusun, mengumpulkan

atau menghimpun. Compiler merupakan penerjemah bahasa

pemrograman yang menerjemahkan instruksi-instruksi dalam satu

kesatuan modul ke dalam bahasa mesin (obyek program). Dan

mengalami proses linking yang berfungsi untuk menggabungkan modul-

modul tersebut dengan modul lain yang berkaitan, sehingga akan

dihasilkan suatu file executable yang akan dieksekusi oleh komputer.

Page 13: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Secara umum, sistematika pokok penulisan program terdiri dari

inisialisasi, input, proses dan output.

1. Inisialisasi

Pada beberapa bahasa pemrograman tersturktur seperti Pascal,

C dan lain-lain.

Proses inisialisasi merupakan suatu keharusan. Pada tahap ini

pemrogram harus menuliskan nama program, piranti yang akan

digunakan, konstanta, variabel, fungsi dan prosedur yang akan

digunakan.

Page 14: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

2. Input

Pada tahap ini pemrogram menuliskan perintah-perintah untuk

memasukkan data yang akan diproses dengan suatu prosedur.

3. Proses

Pada tahap ketiga ini pemrogram menuliskan proses-proses

pengolahan data, baik berupa rumus matematika, statistik maupun

logika dan lain-lain.

4. Output

Pada tahap terakhir ini pemrogram menuliskan perintah-perintah

untuk menampilkan hasil pengolahan data dalam bentuk format

tertentu, seperti tabel, grafik dan lain-lain.

Page 15: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

6. Menulis Dokumentasi Contoh dokumentasi sederhana adalah dengan menuliskan setiap baris

program atau setiap beberapa baris program, dengan ditambahkan

komentar yang menjelaskan dari suatu pernyataan.

5. Menguji Program (Testing dan Debuging) Testing dan debuging mempunyai tujuan yang sama yaitu menghasilkan

program yang benar.

Testing adalah proses mengeksekusi program secara intensif untuk

menemukan kesalahan.

Debuging adalah saat menemukan kesalahan sampai kesalahan itu

diperbaiki sehingga tidak ada kesalahan lagi.

Page 16: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

7. Merawat Program Langkah ini dilakukan setelah program selesai dibuat dan sudah

digunakan oleh pengguna. Hal yang paling sering terjadi disini adalah

munculnya bug yang sebelumnya tidak terdeteksi. Atau mungkin

pengguna ingin tambahan suatu fasilitas baru.

Jadi pemeliharaan program berarti melakukan koreksi, adaptasi dan

melengkapi fasilitas guna mengantisipasi kebutuhan masa depan.

Page 17: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Proses Registrasi Pembayaran Mahasiswa Baru di STMIK AMIKOM

Proses Aktivasi Fasilitas Wifi STMIK AMIKOM

Seorang bapak ingin anaknya agar membelikan dia sebuah cerutu.

Sesampainya di Toko, sang anak bertanya kepada penjaga kios. “hei

Brother… dimana saya bisa menemukan cerutu ?” Penjaga kios

menjawab, “ Di Pojok Boz..” Lalu sang anak pergi ke pojok toko tersebut

dan mencari letak cerutu. Setelah memilih sebuah cerutu sang anak

pergi ke kasir dan mengeluarkan uang pecahan 50 ribuan. Sang

penjaga kios memberi kembalian berupa uang 10ribuan 1 lembar dan

uang seribuan 3 lembar. Belum beranjak 15 meter dari pintu toko,

sang kasir memanggil si anak dan mengatakan bahwa uang 50

ribuannya uang palsu. Sang anak kemudian mengeluarkan uang

cadangan dari sakunya dan menukar uang 50 ribuan tersebut. Setelah

urusan beres, ia pun kembali ke rumah.

Page 18: Kusnawi, S.Kom, M - elearning.amikom.ac.idelearning.amikom.ac.id/...3/...Materi_-2_Algoritma_dan_Langkah_Program.pdfAlgoritma adalah jantung ilmu komputer atau informatika. Banyak

Menghitung konversi suhu.dari Celcius menjadi Reamur dan Farenheit. [clue : R = 4/5 * C dan F = 9/5 * C + 32]

Menghitung sisi miring dari suatu segitiga siku-siku, jika diketahui panjang sisi yang membentuk sudut siku-siku.

Mengkonversi nilai angka ke huruf Nilai angka Nilai huruf :

80.0 - 100 A

65.0 - 79.9 B

55.0 – 64.9 C

45.0 – 54.9 D

0 – 44.9 E