RESUME ALGORITMA


RESUME MATERI BIG PROJECT IV
(ALGORITMA)





 
NAMA                               :        NURMALA SARI
JURUSAN                        :        PTI
SEMESTER/KELAS    :        II/B
NIM                                   :        2018060092
DOSEN PENGAMPU  :        ITA FITRIATI., S.KOM., M.T

SEKOLAH TINGGI KEGURUAN DAN ILMU PENDIDIKAN
(STKIP) TAMAN SISWA BIMA
PROGRAM STUDI TEKNOLOGI INFORMASI
TAHUN AJARAN 2018/2019


ALGORITMA
A.                 Sejarah Algoritma
Para ahli sejarah matematika meyakini bahwa kata algorism berasal dari nama penulis buku juga ahli matematika berkebangsaan Arab yang terkenal yaitu Abu Ja’far Muhammad lbnu Musa Al-Khuwarizmi (770-840). Sebagian referensi menulis Abu Abdullah Muhammad lbnu Musa Al-Khawarizrni.

Orang barat melafalkan Al-Khuwarizmi dengan algorism. Entah karena Al-Khuwarizmi seorang algorist yang pintar, kemudian untuk selanjutnya dikenal dengan algorism sebagai definisi untuk langkah penyelesaian suatu masalah yang menghasilkan solusi oleh orang barat.

Al-Khuwarizmi lahir di Khwarizm (kheva), kota yang terletak di selatan Sungai Oxus (sekarang Uzbekistan). Ketika masih kecil, ia pindah bersama orangtuanya ke selatan kota Baghdad (Irak).

Salah satu buku Al-Khuwarizmi yang terkenal adalah Kitab Al Jabar Wal-Muqabala yang berarti “Buku pemugaran dan pengurangan” (The book of restoration and reduction).

Dari judul buku itu jugalah didapat kata “Aljabar” yang sekarang menjadi salah satu cabang ilmu matematika.

Sebuah sumber lain menuliskan algoritma adalah suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang terstruktur dan ditulis secara matematis, yang akan dikerjakan untuk menyelesaikan suatu masalah dengan bantuan komputer.

Seperti halnya sebuah bangunan yang kuat memiliki struktur rangka yang baik. Demikian juga pada program atau aplikasi yang baik juga harus disusun oleh struktur pemrograman yang baik. Teknik penyusunan struktur program disebut dengan algoritma.

B.                 Definisi Algoritma
Pengertian algoritma adalah langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis untuk menghasilkan solusi yang tepat. Awalnya algoritma digunakan untuk penghitungan dalam ilmu matematika namun dalam perkembangannya, kata algoritma justru banyak dipakai pada bidang pemrograman komputer.

Istilah algoritma dalam bahasa Indonesia diserap dari Bahasa lnggris “algorithm” yang secara etimologi berasal dari bahasa Arab “algorism” yang berarti proses menghitung dengan angka Arab. Seorang algorist adalah seorang yang menghitung menggunakan angka Arab.

Dalam bidang komputer, algoritma didefinisikan sebagai urutan langkah-langkah penyelesaian masalah yang disusun secara sistematis dan logis.



C.                  Contoh Algoritma
Mengirim Surat
Algoritma Mengirim Surat
  • Ketik atau tulis surat
  • Siapkan sampul surat atau amplop
  • Masukkan surat ke dalam amplop yang tersedia
  • Lem amplop surat dengan baik
  • Tuliskan alamat pengiriman surat, jika tidak ingat, lebih dahulu ambil buku alamat & cari alamat yangg dituju, lalu tulis alamat  amplop surat.
  • Beli dan tempelkan perangko pada amplop
  • Pergi ke kantor pos dan bawa surat  untukk diserahkan pada pegawai pos

D.                 Kriteria Algoritma
1. Input (Masukan)
Sebuah Algoritma harus memiliki nol input atau inputan dari pengguna (user). Apa yang dimaksud dengan nol input? Nol input dapat diartikan algoritma atau program tidak mendapat inputan data dari pengguna. Bukan berarti algoritma tidak memiliki masukan sama sekali, tetapi inputan pada algoritma sudah di deklarasikan diawal program.

Contoh :
Program mencari sebuah luas lingkaran yang memiliki rumus phi x jari-jari x jari-jari. Pada program tersebut pengguna hanya menginputkan nilai dari jari-jari tetapi tidak nilai phi. Hal ini dikarenakan nilai phi sudah dideklarasikan pada program yaitu 22/7 atau 3.14

Sedangkan yang dimaksud dengan inputan dari pengguna. Seperti contoh diatas, dimana panjang jari-jari perlu diinputkan agar program dapat berjalan dan memberikan hasil yang diinginkan.

2. Output (Keluaran)
Dalam penyusunan kriteria algoritma yang baik dan benar minimal harus memiliki satu output. Ini karena algoritma mengusung teori IPO (Input-Proses-Output) dimana setiap ada masukan pasti ada proses dan keluarannya. Output yang dikeluarkan oleh program dapat berbentuk File, Video, teks, audio dan lain sebagainya. Dapat juga output nya sebagai sebuah data yang disimpan di database.

3. Finiteness (Terbatas)
Terbatas disini bukan artinya mempunyai keterbatasan dalam pengembangan algoritma tetapi algoritma yang dijalankan harus mempunyai batas. Atau bisa diartikan juga suatu program yang dirancang dan dieksekusi haruslah berhenti dan selesai pada output. Program yang buruk adalah program yang mengalami infinite, yaitu semacam program berjalan terus menerus sampai not responding atau bahasa kerennya nge-Hang.

4. Definiteness (Pasti)
Dalam perancangan, program harus memiliki algoritma yang pasti dimana arah dan tujuan yang jelas. Program yang baik adalah program yang memiliki algoritma dengan pernyataan yang jelas seperti kapan mulai dan kapan berakhirnya sebuah progam, tujuan dari program dan output yang jelas. Pada hal ini cukup diperlukan tingkat ke peka an dalam membangun program (software) guna memperkecil persentasi hasil yang tidak diinginkan.

5. Efisien
Penyusunan kriteria algoritma yang terakhir adalah Efisien. Menurut KBBI (Kamus Besar Bahasa Indonesia), efisien adalah tepat atau sesuai untuk mengerjakan (menghasilkan) seauatu dengan tidak membuang-buang waktu, tenaga dan biaya. Hal ini menandakan bahwa algoritma yang ditulis pada program haruslah efisien. Bagaimana program yang efisien? Program yang efisien adalah program yang tidak memakan banyak memori dan tidah melakukan hal-hal yang tidak diperlukan selama proses. Lalu kenapa efisien masuk dalam kriteria algoritma yang baik? Karena setiap program akan memakan waktu dalam setiap proses eksekusinya. Jika program mengerjakan hal-hal yang tidak perlu dilakukan, maka bisa dipastikan program tersebut akan berjalan lambat.

Kesimpulan Kriteria Algoritma
Dari kriteria-kriteria algoritma diatas, kita dapat menarik beberapa kesimpulan antara lain :

·         Penyusunan Kriteria Algoritma harus jelas dan logis, fokus terhadap masalah yang harus diselesaikan.
·         Proses yang dijalankan harus jelas (tidak rancu atau mempunyai dua arti) dan mempunyai batasan dimana algoritma akan berakhir.
·         Algoritma haruslah efektif dan efisien untuk menyelesaikan masalah yang ada.

E.                  Jenis Proses Algoritma
• Sequence proses / urutan. Pada konstruksi ini terdapat sebuah rentetan proses dalam suatu program. urutan yang berjalan dari atas ke bawah, sequence adalah dasar dari semua program, semua program pasti berjalan urut dari atas sampai kebawah.
Contoh: menghitung luas lingkaran.

• Selection proses / pemilihan. Pada konstruksi ini terdapat sebuah syarat yang harus bernilai true atau false dalam hal ini di sebut juga dengan nilai bolean. lalu oleh komputer di lakukan pengecekan apakah yang harus dilakukan menjalankan perintah true atau perintah false.
contoh:Pencarian nilai terbersar dari deretan angka

• Itteration proses / Perulangan. Pada konstruksi ini mengulang proses-proses yang sama, sehingga pembuatan program lebih evisien daripada pembuatan tanpa perulangan yang di buat oleh komputer.
Contoh: untuk membantu kita dalam membuat program yang terstruktur konstruksi-konstruksi itu dapat disajikan oleh berbagai macam alat bantu untuk penulisan algoritma sebuah program, pada umumnya sebuah program di sampaikan dengan FLOWCHART, BOXDIAGRAM, atau PSEUDOCODE

• Concurrent Process: beberapa instruksi dikerjakan secara bersama.
Dalam Algoritma, tidak dipakai simbol-simbol / sintaks dari suatu bahasa pemrograman
tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa pemrograman
apapun juga. Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa pemrograman
manapun.

F.                  Macam macam Algortma
1.  Deskriptif
Deskriptif ini maksudnya adalah susunan langkah-langkah menyelesaikan suatu masalah yang di buat secara urut dan mendetail. Misalnya:
1. (START) Buka Kemasan Mie
2. Pisahkan Bumbu Dengan Mie
3. Masukkan Mie Kedalam Panci Air Mendidih
4. Letakkan Bumbu Di Piring
5. Tiris Mie, & Campurkan Dengan Bumbu Di Piring
6. Hidangkan (END)
  Kelemahan dari Algoritma ini adalah terlalu panjang meskipun mendetail

2.  Flowchart
Flowchart (Diagram alir) ini langkah-langkah penyelesaian suatu masalah yang di buat dalam bentuk grafik menggunakan simbol-simbol yang menggambarkan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan masukkan (Input), Pemrosesan masukkan, & Diakhiri dengan menampilkan hasilnya (Output). Berikut Macam-Macam Simbol Dalam Flowchart:
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7OyXAR2RhDgOUy2tsiE672B5DUo-vp1txBjy8Zysw9PklQkeyrmlUP_j5qbxgqfZv7AY1woKSNBiZkL_83z1mUKkdieBlhGM0a81h8QZoj3bhcMI1r6i-iCeEteklQ7_DW8ow7caE0VM/s400/Simbol+Flowchart.PNG
  Misalnya:
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPDDKkIB76hgI53EjvwqnUPrHJglapBUDlOSHIS_7JXHgtGTprun9mHHQR1ZGQdD2JypiULYzfg3-wXt3WHPlTwdN67aj4YLvo_rzgfxwOC8xj9ZHc0T4yxraupqOiX8jYhUXnoxqbTSQ/s320/Raptor.PNG
 Kelemahan dari Algoritma ini adalah kurangnya pengertian atau terlalu ringkas yang dapat menimbulkan kesan ambigu meskipun cara ini paling mudah dan sering digunakan karena singkat.

3.  Pseudocode
Pseudo memiliki arti imitasi atau tiruan atau menyerupai dan code menunjukkan kode pemrograman. Pseudocode adalah algoritma yang di buat mirip dengan bahasa pemrograman aslinya. Tujuannya adalah mempermudah menjelaskan kepada sesama rekan Programer

G.                 Bagian Program Algoritma
Pada dasarnya, bagian algoritma disusun atas tiga bagian (blok) : bagian judul (header) agoritma, bagian deklarasi, dan bagian deskripsi. Setiap bagian dapat diberi komentar untuk memperjelas maksud teks yang dituliskan. Komentar biasanya ditulis menggunakan kurung kurawal.

1)    Judul Algoritma
Judul algoritma adalah bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama algoritma sebaiknya singkat, namun cukup menggambarkan apa yang akan dilakukan oleh algoritma tersebut. Di bawah nama algoritma disertai dengan penjelasan singkat (intisari) tentang apa yang dilakukan oleh algoritma. Penjelasan di bawah nama algoritma sering dinamakan juga spesifikasi algoritma. Algoritma harus ditulis sesuai dengan spesifikasi yang didefinisikan.
Contoh :
Algoritma Luas_Persegi_Panjang
{ Algoritma menghitung luas persegi panjang }

2)    Deklarasi
Di dalam algoritma, deklarasi nama adalah bagian untuk mendefinisikan semua nama yang dipakai di dalam algoritma. Nama tersebut dapat berupa nama terapan, nama peubah, nama tipe, nama prosedur dan nama fungsi.
Contoh :
Deklarasi :
Panjang = integer {tipe data bilangan bulat}
Lebar = integer
Luas = real {tipe data bilangan pecahan}

3)    Deskripsi
Deskripsi adalah bagian terpenting dari struktur algoritma. Bagian ini berisi uraian langkah-langkah penyelesaian masalah. Langkah-langkah ini dituliskan dengan notasi yang lazim dalam penulisan algoritma. Setiap langkah algoritma dibaca dari langkah paling atas hingga langkah paling bawah. Urutan penulisan menentukan urutan pelaksanaan perintah.
Contoh :
Deskripsi :
input (panjang, lebar)
luas <-- panjang * lebar
output (luas)

H.                Langkah Pembuatan Program
1. Mendefinisikan Masalah
Sebelulum menulis program, biasakanlah untuk mendefinikan masalah-masalah yang mungkin akan terjadi karena semakin cepat kita menulis program, semakin lama kita menyelesaikan masalah yang timbul. Maksudnya, jangan terburu-buru untuk menulis code karena jika tidak ditentukan masalah yang akan timbul, kita akan kebingungan saat menulis program nantinya. Jadi, tentukan masalahnya, apa saja yang akan diproses di komputer, setelah itu lanjut ke langkah berikutnya.

2. Menemukan Solusi
Setelah kita menemukan masalah, tentukan solusi dari tiap masalahnya. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi beberapa bagian yang lebih kecil agar lebih mudah diselesaikan. Dengan demikian program utama akan lebih singkat dan mudah dilihat.

3. Memilih Algoritma
Dalam mencari solusi dari tiap masalah, sebaiknya kita membuat beberapa algoritma, bukan cuma satu algoritma untuk satu masalah saja. Pilihlah algoritma yang sesuai dan efisien sehingga tidak membuat program kita nanti lambat atau berat saat digunakan nantinya.

4. Menulis Code
Langkah ini adalah langkah terpenting dan paling asyik. Ketika kita menulis code dari program, nantikan akan menemukan sedikit banyak bug atau error. Pastikan sebelum program dibuild, bug atau error sudah kita handle. Panduan untuk dapat memperbaiki bug atau error adalah

    “Practice makes perfect”

5. Menguji Program
Ujilah program kalian dengan segala kemungkinan sehingga program handal dan layak

6. Menulis Dokumentasi
Kenapa harus menulis dokumentasi? Dokumentasi itu penting agar saat pada suatu saat jika kita akan melakukan perbaikan atau perubahan, tidak perlu lama-lama kita baca code, kita cuma perlu baca dokumentasi pun kita sudah punya gambaran alur program kita.




Daftar Pustaka 

https://medium.com/@doesuniversity/langkah-langkah-pembuatan-program-8c036f01f063

https://www.kanalinfo.web.id/pengertian-algoritma-dan-sejarahnya

Knuth, D. E. 1973. The Art of Computer Programming. Addison-Wesley Published Company.

Kamus Besar Bahasa Indonesia. Kriteria. http://kbbi.web.id/kriteria [diakses 1 November 2016]

Kamus Besar Bahasa Indonesia. Efisien. http://kbbi.web.id/efisien [diakses 2 November 2016]

http://dessythalyta.blogspot.com/2009/10/jenis-proses-algoritma.html

https://kucing-putih-serba-bisa.blogspot.com/2017/10/macam-macam-algoritma.html
Share:

Tidak ada komentar:

Posting Komentar

Tentangku :)

Namaku : Nurmala Sari
Anak ke-2
Mahasiswi dari STKIP TAMAN SISWA BIMA
Prodi PTI

"Belajar mandiri dan tidak menyusahkan orang tua itu motto hidupku"

Terimakasih sudah mampir :)