Pendahuluan


Algoritma Pemrograman dan Struktur Data I merupakan salah satu mata kuliah yang memanfaatkan teknologi informasi dan komunikasi dalam proses pembelajarannya.  Mata kuliah Algoritma Pemrograman dan Struktur Data I sangat penting dikuasai oleh mahasiswa karena mata kuliah tersebut merupakan mata kuliah kunci yang menentukan kesuksesan belajar mahasiswa IT. Dalam mata kuliah ini, mahasiswa tidak hanya sebatas memahami konsep saja namun juga diperlukan pemahaman logika yang benar untuk menyelesaikan masalah. Apabila mahasiswa tidak menguasai skill  dalam pembuatan logika dari suatu program dengan pemahaman Algoritma maka mahasiswa tersebut tidak akan dapat menjadi lulusan yang kompeten di bidang IT.

Tujuan Instruksional Khusus

Mahasiswa dapat menguraikan langkah-langah  algoritma pemrograman dan struktur data I


Apa Itu Algoritma



Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah oleh para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al- Khuwarizmi dibaca orang barat menjadi AlgorismPerubahan kata dari Algorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah menjadi –thm, Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration andreduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra).
Algoritma adalah langkah-langkah  logis   yang diambil dalam  menyelesaikan suatu tugas atau pekerjaan. Kata Logis merupakan kata kunci dalam Algoritma. Langkah-langkah dalam Algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam pelajaran Algoritma, Tugas / Pekerjaan tersebut  akan  diselesaikan dengan menggunakan Komputer. Tugas kita adalah memberikan perintah kepada komputer untuk menyelesaikan pekerjaan tersebut. Komputer memang dirancang untuk dapat melaksanakan  perintah  yang diberikan oleh manusia. Susunan perintah-perintah  inilah yang disebut algoritma,
Kamus besar bahasa Indonesia  secara formal mendefinisikan algoritma sebagai:  Algoritma adalah urutan logis pengambilan putusan  untuk pemecahan masalah.
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang diacu dalam terminologi algoritma.  Dalam kehidupan sehari-hari banyak terdapat  proses yang dinyatakan dalam suatu algoritma  sesuai dengan definisinya.  Sebagai contoh bagaimana membuat telor dadar, atau membuat resep makanan tentunya harus ada langkah-langkah dalam menyelesaikan.

Jadi ??                                                                             
*       Karena itu suatu Algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses.

*       Jadi suatu pemroses harus :
            1. Mengerti setiap langkah dalam Algoritma
            2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.

Salah satu buku literatur  Horowitz,Eliis and Sahni, Sartaj; FUNDAMENTAL OF DATA STRUCTUTES; Computer Science Press, Inc.; Rocville, Maryland; 1983, memberikan definisi dan kriteria sebuah algoritma sebagai berikut:

An algorithm is a finite set of instructions which, if followed, accomplish a particular task. In addition every algorithm must satisfy the following criteria :
Input : there are zero or more quantities which are externally supplied
Output : at least one quantity is produced;
Definiteness : each instruction must be clear and unambiguous;
Finiteness : if we trace out the instructions of an algorithm, then for all cases the algorithm will terminate after a finite number of steps;
Effectiveness : every instruction must be sufficiently basic that it can in principle be carried out by a person using only pencil and paper. It is not enough that each operation be definite as in 3), but it must also be feasible.

Secara bebas definisi diatas dapat diterjemahkan sebagai berkut :
Algoritma adalah sekumpulan instruksi, yang apabila dijalankan,  akan menyelesaikan suatu tugas tertentu. Sebagai tammbahan, setiap algoritma harus memenuhi kriteria sebagai berikut
  1. Tidak harus ada data masukan yang dimasukkan dari luar.
  2. Paling tidak ada satu buah keluaran
  3. Setiap instruksi jelas maksudnya dan tidak meragukan
  4. Algoritma baik secara keseluruhan maupun sub algoritma bila ditelusuri harus ada titik berhentinya.
  5. Setiap instruksi selain jelas juga harus dapat dilaksanakan, dan juga efektif dalam arti harus  menghasilkan  sesuatu.  Sebagai  contoh      A = A + 0  atau  A = A*1,  adalah termasuk instruksi yang tidak efektif. 


Contoh Algoritma dalam kehidupan sehari-hari:
1. Algoritma Rebus Telor
  1. Ambil panci
  2. Apakah panci bersih, bila kotor cuci lebih dulu
  3. Taruh air dalam panci 
  4. Nyalakan kompor
  5. Letakkan panci diatas kompor
  6. Tunggu hingga air mendidih
  7. Masukkan telur
  8. Tunggu sampai tiga menit
  9. Angkat panci dari kompor
  10. Matikan kompor
  11. Angkat telur dari panci

2. Algoritma Menghitung Luas Persegi Panjang.
  1. Masukan panjang persegi panjang
  2. Masukan lebar persegi panjang
  3. Hitung luas persegi panjang = panjang x lebar
  4. Tulis luas persegi panjang

Program


Program  adalah kumpulan   instruksi-instruksi yang diberikan kepada komputer untuk menyelesaikan suatu tugas, Instruksi sama dengan langkah dalam algoritma, Instruksi-instruksi harus tersusun secara logis dalam artian memerlukan logika yang benar. Program ini ditulis dengan menggunakan bahasa  pemrograman.  Contoh bahasa pemrograman : Cobol, Fortran, Basic, Pascal, C, Java dsb. Bahasa  C ini yang kita gunakan untuk menerapkan Algoritma di komputer
Jadi bisa kita sebut bahwa program adalah suatu  implementasi dari bahasa pemrograman.

Memperkenalkan Algoritma melalui soal-soal praktis


Diketahui dua buah bilangan masing- masing bernilai    5  dan  4.
Susun program yang ditulis dalam Bahasa C untuk mencetak total kedua buah bilangan tersebut.

Jawab 
Algoritma Secara Umum

 A ß  5
 B ß  4
 T ß A + B
 WRITE(T)



Catatan: 
WRITE(T)
Dapat ditulis secara bebas asal dapat dimengerti oleh orang lain


Perintah : WRITE ( T ) pada algoritma secara umum diatas,  dapat diganti, misalnya dengan :
WRITE   T
PRINT ( T )
PRINT T
CETAK T
TULIS T
Print T
Write T
dan sebagainya
asal dipahami
ß Assigment ( Penugasan )
dalam bahasa
:=  Pascal
=   bahasa C
ß Algoritma

Perintah Algoritma diatas terdiri dari :
4 LANGKAH
Satu  langkah identik dengan satu instruksi komputer



Rangkuman

  1. Algoritma merupakan salah satu bidang yang penting dalam bidang informatika 
  2. Proses algoritma tidak hanya kita temui pada bidang informatika saja namun juga dalam kehidupan sehari-hari banyak terdapat  proses yang dinyatakan dalam suatu algoritma  sesuai dengan definisinya 
  3. Program yang baik adalah program yang bisa mengoptimalkan kinerja komputer, dengan cara menggunakan kembali program atau sekumpulan program dengan proses tertentu

Daftar Pustaka

  1.        Algorithm Data Structures and Problem Solving with C++. 1997. Addison Wesley.
  2.        Moh. Sjukani, Algoritma dan Struktur Data. Mitra Wacana Media
  3.        Rinaldi Munir, Algoritma dan Pemrograman. Informatika Bandung

Video Pembelajaran


Video Pembelajaran Pengertian Dasar Algoritma 


Kuis Atau Latihan

https://forms.gle/qn9p39H6TdTSVRQ87
https://forms.gle/qn9p39H6TdTSVRQ87