Disusun oleh
NISN 0066224572
Kata pengantar
Puji syukur kehadirat Tuhan Yang Maha Kuasa atas segala limpahan Rahmat, Inayah, Taufik
dan Hinayahnya sehingga saya dapat menyelesaikan penyusunan makalah ini dalam bentuk
maupun isinya yang sangat sederhana. Semoga makalah ini dadat bermanfaat bagi kita.
Harapan saya semoga makalah ini membantu menambah pengetahuan dan pengalaman bagi
para pembaca, sehingga saya dapat memperbaiki bentuk maupun isi makalah ini sehingga
kedepannya dapat lebih baik.
Makalah ini saya akui masih banyak kekurangan karena pengalaman yang saya miliki sangat
kurang. Oleh kerena itu saya harapkan kepada para pembaca untuk memberikan masukan-
masukan yang bersifat membangun untuk kesempurnaan makalah ini.
Penulis
BAB I
PENDAHULUAN
1. A. Latar Belakang
Dewasa ini, komputer digunakan di hampir semua bidang kehidupan manusia,mulai dari
pendidikan, bisnis, sampai dengan permainan. Berbicara tentangkomputer tidak lepas dari
pemrogaman komputer. Hal ini karena komputer padadasarnya merupakan mesin yang tidak
bisa apa-apa. Kita harus memberikan serangkaian instruksi kepada komputer agar mesin
‘pintar’ ini dapat memecahkansuatu masalah. Langkah-langkah yang perlu dilakukan dalam
memberikaninstruksi kepada komputer untuk memecahkan masalah inilah yang
dinamakanpemrogaman komputer. Adapun langkah-langkah pemrogaman komputer
adalahsebagi berikut: mendefinisikan masalah, menentukan solusi, memilih
algoritma,menulis program, menguji program, menulis dokumentasi, serta
merawatprogram.Sebelum membuat program, hendaknya kita membuat Flow Chart
atauPseudocode, sehingga memudahkan kita untuk memahami algoritma sertamemudahkan
kita dalam membuat program. Program yang ditulis juga harus jelas,nyata, dan komplit.
1. B. Rumusan Masalah
2. Apakah yang dimaksud dengan algoritma?
3. Apakah fungsi algoritma?
4. Bagaimana kriteria algoritma dalam bidang komputer?
BAB II
ISI
Logika berasal dari kata Yunani kunoλόγος (logos) yang berarti hasil pertimbangan akal
pikiran yang diutarakan lewat kata dan dinyatakan dalam bahasa. Logika adalah salah satu
cabang filsafat.
Sebagai ilmu, logika disebut dengan logike episteme (Latin: logica scientia) atau ilmu logika
(ilmu pengetahuan) yang mempelajari kecakapan untuk berpikir secara lurus, tepat, dan
teratur
Ilmu disini mengacu pada kemampuan rasional untuk mengetahui dan kecakapan mengacu
pada kesanggupan akal budi untuk mewujudkan pengetahuan ke dalam tindakan. Kata logis
yang dipergunakan tersebut bisa juga diartikan dengan masuk akal.
Definisi Algoritma :
Ahli sejarah matematika menemukan kata algoritma berasal dari nama penulis buku Arab
terkenal, yaitu Abu Abdullah Muhammad Ibnu Musa Al-Khuwarizmiseorang ahli matematika,
astrologi, astronomi dan geografi.
Algoritma adalah sekumpulan langkah (tahapan) logis untuk menyelesaikan suatu pekerjaan
(permasalahan).
Logika dan Algoritma diperkenalkan Oleh Ahli Matematika : Abu Ja’far Muhammad Ibnu
Musa Al Khawarizmi. Logika berasal dari kata Yunani kuno (logos) yang berarti
hasil pertimbangan akal pikiran yang diutarakan lewat kata dan dinyatakan dalam
bahasa.Pada Merriam-Webster’s Collegiate Dictionary, istilah algoritma diartikan sebagai
prosedur langkah demi langkah untuk memecahkan masalah atau menyelesaikan suatu tugas.
Kamus Besar Bahasa Indonesia (KBBI) mendefinisikan algoritma sebagai urutan logis
pengambilan keputusan untuk pemecahan masalah. Algoritma adalah urutan langkah –
langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Logis
merupakan kunci dari sebuah algoritma. Langkah – langkah dalam algoritma harus logis dan
bernilai benar atau salah.
Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun,
artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang
telaksanakannya. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa
pemrograman. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena
algoritmanya sama.
1. d. Sifat – Sifat Algoritma
ü Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa
pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasial goritmik.
ü Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini
dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi
algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka
sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman
secara umum.
ü Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi
algoritmik tidak dapat dijalankan oleh komputer.
Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus
ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu
diingat bahwa orang yang menulis program sangat terikat dalamaturan tata bahasanya dan
spesifikasi mesin yang menjalannya. Algoritma sebenarnya digunakan untuk membantu kita
dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman. Algoritma
merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma
harus ditranslasikan ke dalam notasi bahasa pemrograman.Ada beberapa hal yang harus
diperhatikan pada translasi tersebut, yaitu: Pendeklarasian variabel Untuk mengetahui
dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak
semua bahasa pemrograman membutuhkannya. Pemilihan tipe data Apabila bahasa
pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini
dipertimbangkan padasaat pemilihan tipe data. Pemakaian instruksi-instruksi Beberapa
instruksi mempunyai kegunaan yang sama tetapi masing-masing memiliki kelebihan dan
kekurangan yang berbeda. Aturan sintaksis Pada saat menuliskan program kita terikat dengan
aturan sintaksis dalam bahasa pemrograman yang akan digunakan. Tampilan hasil Pada saat
membuat algoritma kita tidak memikirkan tampilan hasilyang akan disajikan. Hal-hal teknis
ini diperhatikan ketika mengkonversikannya menjadi program. Cara pengoperasian compiler
atau interpreter. Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler
atau interpreter.
Menentukan model suatu algoritma yang digunakan sehingga dapat membuat barisan langkah
secara berurutan guna mendapatkan solusi penyelesaian masalah
(Untuk melihat faktor efesiensi & efektifitas dari algoritma tersebut), Dapat dilakukan
terhadap suatu algoritma dengan melihat pada :
Adalah satuan waktu yang ditempuh atau diperlukan oleh suatu algoritma dalam
menyelesaikan suatu masalah. Hal-hal yg dapat mempengaruhi daripada waktu tempuh
adalah :
ü Banyaknya langkah.
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 diberbagai platform komputer.
Precise (tepat, betul, teliti). Setiap instruksi harus ditulis dengan seksama dan tidak ada
keragu-raguan, dengan demikian setiap instruksi harus dinyatakan secara eksplisit dan tidak
ada bagian yang dihilangkan karena pemroses dianggap sudah mengerti. Setiap langkah harus
jelas dan pasti. Contoh: Tambahkan 1 atau 2 pada x.
1. g. Penyajian Algoritma
Yaitu dengan menjelaskan secara detail algoritma suatu masalah dengan bahasa yang mudah
dimengerti oleh orang awam, dan akan sangat sulit dimengerti bila diterjemahkan kedalam
bahasa pemograman.
Memasukkan angka luas dan tinggi. Algoritma mengitung luas segitiga yaitu setengah alas
dikalikan tinggi algoitma.
pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti
Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan
dikomunikasikan kepada pemrogram.
Contoh :
Read Alas
Read Tinggi
Luas=(Alas*Tinggi)/24.
Write(luas)
Dalam pembuatan flowchart Program tidak ada rumus atau patokan yang bersifat mutlak.
Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu masalah
dengan komputer.Namun secara garis besar setiap pengolahan selalu terdiri atas 3 bagian
utama,
yaitu:
Input,
Proses pengolahan
Output
ü START, berisi pernyataan untuk persiapan peralatan yang diperlukan sebelum menangani
pemecahan persoalan.
ü READ, berisi pernyataan kegiatan untuk membaca data dari suatu peralatan input.
ü PROSES, berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data
yang dibaca.
Yaitu dengan cara menyajikannya dalam salah satu bahasa pemrograman, misalnya C, C++
BASIC, PASCAL, FORTRAN, dBase, atau yang lainnya. Dalamproses, uji program oleh
komputer akan melalui beberapa tahap yaitu :
Fase Debugging, yaitu fase dari suatu proses program eksekusi yang akan melakukan koreksi
terhadap kesalahan program. Yang dimaksud disni adalah error atau salah dalam penulisan
program baik logika maupun sintaksnya. Fase Profilling, yaitu fase yang akan bekerja jika
program tersebut sudah benaratau telah melalui proses pada fase debugging. Fase ini bekerja
untuk melihat dan mengukur waktu tempuh atau running time yang diperlukan serta jumlah
memori/storage yang digunakan dalam menyelesaikan suatu algoritma.
1. Statement Logika
ü OR
Merupakan statement kondisi dimana pernyataan akan benar apabila salah satu kondisi benar
atau semua kondisi benar.
ü And
Merupakan statement kondisi dimana pernyataan akan benar apabila semua kondisi benar.
ü NOT
ü NOR
Merupakan statement kondisi dimana pernyataannya akan benar apabila semua kondisinya
salah.
ü NAND
Merupakan Statement kondisi yang akan bernilai benar apabila semua kondisi salah atau
salah satu kondisinya salah.
ü XOR
Merupakan Statement kondisi yang akan bernilai benar bila salah satu kondisinyabenar.
ü XNOR
Merupakan Statement kondisi dimana pernyataan akan bernilai benar apabilasemua kondisi
salah atau benar. Pernyataan akan bernilai salah apabila salah satu bernilai salah.
ü If.. Then.. Endif
Statement kondisi atau keputusan dimana keputusan yang dapat ditampunghanya satu.
Statement Kondisi yang bisa menampung lebih dari 2 kondisi sampai tak hingga.
ü If Terselubung
Statement kondisi yang mana didalam sebuah kondisi masih terdapat beberapa buah kondisi.
Merupakan suatu proses kondisi pengerjaan perintah statement program secara berulang-
ulang sampai kondisi yang diingini.
ü For.. Next
ü While… wend
ü For.. To.. Do
Merupakan kondisi perulangan dimana nilai perulangannya dimulai dari nilai terkecil ke nilai
terbesar.
ü Contoh Kasus 2
– Tulis hasilnya
ü input (a, b, c)
ü Jml = a+b+c
ü Rata-rata = Jml/3
ü Output (rata-rata)
Contoh Kasus 3
Algoritma konversi suhu dalam derajat Celcius ke derajat Kalvin. Penyelesaian menggunakan
pseudocode:
ü Input (Celcius)
ü Output (Kalvin)
Contoh Kasus 4
Buat algoritma untuk menentukan diskon dan menampilkannya di layar dari total pembelian
(tp) seorang pelanggan toko, dengan ketentuan bila tp >= 10000, maka diskonnya adalah 5%
dari tp, bila tp < 10000, maka pelanggan tersebut tidak dapat diskon atau nol. Tp dimasukkan
dari keyboard.
Urutan perintahnya :
ü Deklarasi
ü Kamus TP : int
ü Diskon : real
ü Deskripsi
ü Input (TP)
ü If TP >= 10000
ü Diskon ! 0.05 * tp
ü Else Diskon ! 0
ü End Else
ü Output (Diskon)
ü End Deskripsi
a) Definisi
Algoritma adalah urutan langkah-langkah logis penyeselaian masalah yang disusun secara
sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah
dalam algoritma harus dapat ditentukan bernilai benar atau salah.
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer
yang diacu dalam terminologi algoritma. Namun algoritma juga digunakan dalam kehidupan
sehari-hari, contohnya resep makanan. Di dalam resep makanan terdapat langkah-langkah
yang merupakan algoritma. Selain itu masih banyak contoh algoritma yang lain.
Untuk melaksanakan suatu algoritma diperlukan suatu bahasa pemrograman, contoh bahasa
pemrograman adalah : Pascal, C++, Basic, dll. Notasi algoritma dapat diterjemahkan kedalam
bahasa pemrograman apapun, dengan kata lain notasi algoritma bersifat independen.
d) Flowchart
Suatu flowchart adalah suatu representasi secara diagram yang mengilustrasikan urutan dari
operasi yang dilakukan untuk mendapatkan suatu hasil. Dengan katalain, flowchart
membantu kita untuk mengerti dan melihat bentuk algoritma dengan menampilkan algoritma
dalam simbol-simbol gambar.Dalam menggambar flowchart, digunakan simbol tertentu.
Misal kita ingin mencari jumlah dari 2 buah bilangan, misalkan kita ingin mengetahui apakah
sebuah bilangan ganjil ataugenap.
e) Pseudo Code
Pseudo Code adalah urutan baris algoritma seperti kode pemrograman dan tidak memiliki
sintak yang baku. Pseudo Code lebih umum digunakan oleh programmer yang
berpengalaman. Akan tetapi, flowchart lebih mudah dimengerti oleh programmer pemula,
pseudo code sangat mudah diimplementasikan ke dalamkode program dibandingkan dengan
flowchart. Kita bisa bebas menulis pseudocode selama itu mudah dimengerti bagi orang lain.
Tetapi disarankan untuk menggunakan keyword yang umum digunakan seperti : if, then, else,
while, do,repeat, for, dan lainnya. Dan ikuti gaya penulisan pemrograman seperti Pascal, C+
+, dll. Perhatikan kode dibawah ini :
Selesai
Walaupun pseudo code diatas masih bisa dimengerti tetapi ada beberapa statemen yang
ambigu. Dari baris kedua, kita tidak tahu kemana angka tersebut disimpan dan kita juga tidak
tahu angka yang mana yang dimaksud untuk “angka yang sebelumnya”. Apakah angka yang
pertama atau yang kedua. Pseudo Codediatas dapat dimodifikasi menjadi seperti berikut :
Start
Masukkan A
Masukkan B, Tampilkan B
Tampilkan A
End
Pseudo Code diatas lebih baik dibandingkan sebelumnya. Kita bisa dengan jelas melihat
dimana angka disimpan dan angka yang mana yang ditampilkan.
Start
Masukkan A dan B
C = A + B Tampilkan C
End
BABIII
PENUTUP
1. A. Simpulan
1. Algoritma adalah suatu prosedur yang tepat untuk memecahkan masalah dengan
menggunakan bantuan komputer serta menggunakan suatu bahasa pemrogaman
2. 2. Fungsi algoritma adalah untuk mempermudah kerja atau memudahkan kita
dalam membuat program atau biasa di sebut sebagai Problem Solving. Selain itu,
algoritma dapat mengatasi masalah logika dan masalah matematika
3. 3. Kriteria program algoritma harus komplit, nyata, dan jelas. Meskipun tugas
algoritma tidak menghasilkan solusi, tetapi proses harus berakhir hal ini disebut dengan
semi algorithm (prosedur akan berjalan terus atau biasa disebut dengan perulangan).
Intinya kita tidak boleh menambah masalah, akan tetapi kita harus mampu menyelesaikan
masalah untuk mendapat hasil yang tepat.
4. B. Saran
Iklan