Minggu, 29 Desember 2019

Pengantar Algoritma dan Pemrograman

PENGANTAR ALGORITMA DAN PEMROGRAMAN

 A. ALGORITMA


Dalam matematika dan ilmu komputer, algoritma adalah prosedur langkah-demi-langkah untuk penghitungan. Algoritme digunakan untuk penghitungan, pemrosesan data, dan penalaran otomatis. Algoritma adalah metode efektif diekspresikan sebagai rangkaian terbatas dari instruksi-instruksi yang telah didefinisikan dengan baik untuk menghitung sebuah fungsi.
Dimulai dari sebuah kondisi awal dan input awal (mungkin kosong), instruksi-instruksi tersebut menjelaskan sebuah komputasi yang, bila dieksekusi, diproses lewat sejumlah urutan kondisi terbatas yang terdefinisi dengan baik, yang pada akhirnya menghasilkan "keluaran" dan berhenti di kondisi akhir. Transisi dari satu kondisi ke kondisi selanjutnya tidak harus deterministik; beberapa algoritma, dikenal dengan algoritma pengacakan, menggunakan masukan acak.
Algoritma secara umum memiliki beberapa bentuk dasar, yaitu:

1. Struktur Sekuensial
Struktur sekuensial pada prinsipnya adalah alur pemikiran yang tersuktur, terurut, pasti, dan jelas untuk menyelesaikan masalah. Tapi kadang ada langkah-langkah yang tidak boleh diubah. Contoh sederhananya "mengirim surat". Pada kasus tersebut terdapat langkah-langkah, yaitu :
a. Sediakan amplop
b. Sediakan prangko
c. Memasang perango pada amplop
d. Menuliskan alamat pengirim dan alamat tujuan
e. Pergi ke kantor pos atau memasukan surat itu ke dalam kotak surat
f. Surat terkirim

2.Struktur Percabangan
Pada contoh kasus struktur sekuensial, perhatikan urutan ke 5(e) yang mana surat yang telah siap dikirim akan dikirim melalui kantor pos atau kotak surat. Pada langkah tersebut terdapat kata atau, yang berarti memilih solusi. Ada dua solusi yang bisa diambil. Algoritma untuk memilih salah satu dari beberapa pilihan yang ada disebut algoritma percabangan/pemilihan. Yang perlu diperhatikan pada algoritma ini adalah solusi pemilihan akan dilakukan jika kondisinya terpenuhi, dalam arti kondisinya menghasilkan nilai benar (TRUE). Jika solusi benar maka akan dijalankan, dan bila salah maka tidak akan dijalankan; tapi bisa jadi menjalankan solusi lain atau tidak sama sekali.

3. Struktur Perulangan
Struktur perulangan adalah instruksi yang dapat mengulang sederetan instruksi secara berulang-ulang sesuai persyaratan yang ditetapkan. Struktur perulangan pada dasarnya terdiri atas:
a. Kondisi perulangan: suatu kondisi yang harus dipenuhi agar perulangan dapat terjadi.
b. Badan (body) perulangan: deretan instruksi yang akan diulang-ulang pelaksanaannya.
c.Pencacahan (counter) perulangan: suatu variabel yang nilainya harus berubah agar perulangan dapat terjadi dan pada akhirnya membatasi jumlah perulangan yang dapat dilaksanakan.
Kriteria Algoritma  memiliki lima ciri utama yang saling berhubungan satu dengan lainnya. Menurut Donald E. Knuth, dapun kriteria algoritma adalah sebagai berikut:
a. Ada Input, yaitu permasalahan yang dihadapi dan akan dicarikan solusinya. Algoritma memiliki nol atau lebih input (masukan).
b. Ada Proses, yaitu rencana atau langkah-langkah yang harus dilakukan untuk mencapai tujuan akhir.
c. Ada Output, yaitu solusi atau tampilan akhir yang didapatkan dari suatu algoritma. Algoritma memiliki minimal satu output.
d. Ada intruksi-intruksi yang jelas dan tidak ambigu, yaitu instrukti yang jelas dalam algoritma sehingga tidak terjadi kesalahan dalam menghasilkan output.
e. Ada tujuan akhir yang dicapai, yaitu akhir dari program dimana program akan berhenti ketika tujuan akhir telah tercapai.
Tujuan dan Fungsi Algoritma Pada dasarnya tujuan dan fungsi utama dari algoritma adalah untuk memecahkan suatu masalah. Lebih jelasnya, adapun tujuan dan fungsi algoritma adalah sebagai berikut:
• Untuk membantu menyederhanakan suatu program yang rumit dan besar.
• Untuk memudahkan dalam membuat sebuah program untuk masalah tertentu.
• Algoritma dapat digunakan berkali-kali untuk menyelesaikan suatu permasalahan.
• Membantu memecahkan suatu permasalahan dengan logika dan sistematis.
• Untuk meminimalisir penulisan program secara berulang-ulang.
• Agar dapat melakukan pendekatan top-down dan divide and conquer.
• Untuk memudahkan membuat program yang lebih rapih dan terstruktur sehingga lebih mudah dipahami dan dikembangkan.
• Memudahkan proses modifikasi pada program karena bisa dilakukan hanya pada satu modul tanpa harus mengubah modiul lainnya.
• Ketika terjadi kesalahan, algoritma dapat membantu menemukannya karena alur kerja yang jelas.
• Memudahkan proses dokumentasi Klasifikasi Algoritma Algoritma dapat diklasifikasikan berdasarkan implementasinya.
Mengacu pada pengertian algoritma di atas, adapun klasifikasi algoritma adalah sebagai berikut:
a. Rekursi dan Iterasi; Algoritma rekursi adalah algoritma yang memanggil dirinya sendiri secara berulang-ulang. Sedangkan algoritma iterasi adalah algoritma yang memakai konstrukti berulang dimana terkadang terdapat data tambahan pada struktur yang dibuat.
b. Logical; Algoritma logical adalah algoritma yang dapat memposisikan diri seperti logika deduksi yang terkontrol.
c. Serial, Parallel, atau Terdistribusi; Algoritma serial adalah algoritma yang menjalankan satu instruksi saja. Algoritam parallel adalah algoritma yang dapat mengerjakan suatu perintah dalam waktu yang sama. Sedangkan algoritma terdistribusi adalah algoritma yang memakai banyak mesin yang terkoneksi dengan jaringan.
d. Deterministik atau Non-deterministik; Algoritma deterministik adalah algoritma yang dapat memecahkan suatu masalah dengan keputusan yang tepat. Sedangkan algoritma Non-deterministik adalah algoritma yang memecahkan suatu masalah dengan metode penerkaan.
e. Tepat atau Perkiraan; Suatu algoritma mungkin saja memiliki solusi yang tepat, atau setidaknya mempunyai perkiraan yang mendekati solusi yang benar. Dalam merumuskannya dapat dilakukan dengan strategi deterministic ataupun secara acak.
f. Algoritma Quantum; Algoritma quantum adalah algoritma yang menggunakan model realistik dari komputasi quantum.
Contoh Penggunaan Algoritma Pada dasarnya algoritma tidak hanya dalam ilmu komputer dan matematika saja, tetapi juga pada berbagai kegiatan manusia sehari-hari. Salah satu contohnya adalah ketika seseorang ingin membuat mie instan, maka algoritmanya adalah sebagai berikut:
• Siapkan 1 bungkus mie instan, 400 ml air (2 gelas), panci, mangkuk, sendok dan garpu
• Masukkan air ke dalam panci
• Masak air di atas kompor dengan api sedang
• Biarkan hingga air mendidih
• Masukkan mie instan ke dalam air mendidih
• Aduk perlahan hingga 3 menit
• Jika mie sudah matang masukkan bumbu
• Aduk mie hingga bumbu merata
• Sajikan mie instan

B. PEMROGRAMAN


Pemrograman atau bisa juga disebut dengan bahasa pemrograman merupakan suatu aktifitas yang mana melakukan coding untuk membuat ataupun merancang sebuah program yang nantinya akan berguna dan bisa digunakan untuk menyelesaikan suatu masalah maupun suatu pekerjaan sesuai dengan rancangan program tersebut.
Bahasa Pemrograman yang kita kenal ada banyak sekali di belahan dunia, tentang ilmu komputer dan teknologi dewasa ini. Perkembangannya mengikuti tingginya inovasi yang dilakukan dalam dunia teknologi. Contoh bahasa pemrograman yang kita kenal antara lain adalah untuk membuat aplikasi game, antivirus, web, dan teknologi lainnya.
Pemrograman adalah proses menulis, menguji dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau ‘pekerjaan’ sesuai dengan keinginan si pemrogram. Program komputer atau sering kali disingkat sebagai program adalah serangkaian instruksi yang ditulis untuk melakukan suatu fungsi spesifik pada komputer.
Komputer pada dasarnya membutuhkan keberadaan program agar bisa menjalankan fungsinya sebagai komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor. Sebuah program biasanya memiliki suatu bentuk model pengeksekusian tertentu agar dapat secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang dapat dibaca oleh manusia disebut sebagai kode sumber, bentuk program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritme yang digunakan pada program tersebut. Kode sumber tersebut pada akhirnya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk sebuah program. bentuk alternatif lain model pengeksekusian sebuah program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan. Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus, pengetahuan-pengetahuan lain seperti matematika. Karena untuk membuat sebuah program, dibuthkan keterampilan dalam menguasai bahasa pemrograman.
Pemrograman adalah sebuah seni dalam menggunakan satu atau lebih algoritma yang saling berhubungan dengan menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman. Bahasa pemrograman berguna untuk mengintruksikan / memerintah mesin komputer untuk melakukan pengolahan data dengan bahasa program (kode program) hingga menjadi hasil (program/aplikasi) sesuai dengan keinginan manusia yang melakukan pemrograman (programer).
Pada bahasa pemrograman terdapat dua faktor yang bisa dibilang penting penting, yaitu:
• Sintaks adalah aturan gramatikal yang mana bertujuan untuk mengatur tata cara penulisan kata, ekspresi dan pernyataan.
• Semantik adalah aturan-aturan yang digunakan untuk menyatakan arti.
Bahasa Pemrograman merupakan sebuah instruksi untuk memerintah komputer agar bisa menjalankan fungsi tertentu, namun hanya instruksi standar saja. Seperti yang sudah Saya singgung di atas, bahasa pemrograman merupakan sebuah perhimpunan dari aturan sintaks dan semantik yang tugasnya untuk mendefinisikan program komputer. Seseorang yang bisa memahami bahasa pemrograman dapat menentukan mana data yang akan di simpan / diteruskan, data mana yang akan di olah, dan langkah apa saja yang harus di ambil dalam berbagai situasi.
Fungsi dari bahasa pemrograman adalah untuk memerintahkan sebuah komputer agar bisa mengolah data sesuai dengan yang kita inginkan. Jadi, kendali sepenuhnya ada di tangan kita. Keluaran dari bahasa pemrograman tersebut bisa berupa aplikasi ataupun program khusus, contonya seperti lampu lalu lintas. Antara lampu merah, kuning, dan hijau memiliki urutan dan jeda waktu yang berbeda, sehingga para pengendara tahu kapan harus berhenti dan kapan harus jalan.
  • JENIS – JENIS PEMROGRAMAN

Berikut ini adalah beberapa jenis pemrograman, antara lain adalah sebagai berikut :
Pemrograman Sistem Operasi
Jenis pemrograman yang pertama adalah pemrograman yang bisa dibilang merupakan yang terpenting dari semua jenis pemrograman. Hal tersebut karena dengan adanya pemrograman inilah semua jenis program yang berjalan pada PC bisa kita gunakan. Salah satu pemrograman sistem operasi yang paling populer dan banyak digunakan di dunia adalah sistem operasi windows. Selain tampilannya yang bagus, windows juga sangat kompatibel dengan hampir semua jenis PC maupun laptop yang ada di dunia. Hal tersebutlah yang membuat windows banyak digunakan oleh vendor teknologi pc di dunia.
Selain windows, linux juga merupakan salah satu pemrograman sistem operasi yang populer dan banyak digunakan. Linux dibangun menggunakan bahasa pemrograman C. hal tersebut bisa diketahui karena linux bersifat open source(source code nya bisa dibaca siapapun). System operasi lain seperti halnya Windows tidak diketahui dengan pasti dibangun dengan bahasa apa meski beberapa sumber mengatakan windows dibangun dengan bahasa assembler.

Pemrograman Aplikasi
Pemrograman yang satu ini memfokuskan para programmer untuk membuat sebuah program dalam bentuk aplikasi yang nantinya akan digunakan untuk melakukan sebuah kegiatan ataupun pekerjaan. Bahasa pemrograman yang dapat digunakan untuk membangun aplikasi misalnya java, visual basic, Delphi, C/++/C#, VISUAL FOXPRO, dan Python. Aplikasi yang dihasilkanpun bermacam-macam mulai dari editor teks, image viewer, pemutar VCD, sampai aplikasi-aplikasi perkantoran pengolah gambar, pengolah foto, pengolah data dan lain-lain.

Pemrograman Web
Pemrograman web pada dasarnya digunakan untuk mendesain halaman situs web yang dinamis dan interaktif. Suatu halaman web dibangun dengan menggunakan bahasa HTML dan perlu di digaris bawahi bahwa HTML bukan bahasa pemrograman, HTML hanyalah melakukan markup(penandaan) pada suatu teks sehingga akan menghasilkan format tertentu apabila dibaca oleh browser. Itu sebabnya HTML hanya bersifat statis. Pemrograman web didesain untuk dapat mengubah-ubah output HTML tersebut sehingga tidak lagi statis melainkan dinamis. Bahasa pemrograman yang digunkan untuk pemrograman web adalah ASP, PHP, JSP, VBScript, dan Java Script.

Pemrograman Game
Pemrograman game adalah pemrograman yang paling rumit. Sebelum dikembangkan, sebuah game harus memiliki konsep cerita yang jelas dan menarik. Kemudian pemrograman game harus menggabungkan seluruh pustaka dan API(Aplication Programing Interface) yang ada. Karena alasan diatas bahasa pemrograman yang paling populer untuk pemrograman game adalah C++, java dan C. sifat orientasi objek dan compiler dari bahasa tersebut mendukung untuk pemrograman game. Namun bukan berarti bahasa pemrograman yang lain tidak mendapat tempat, jika game yang dibuat adalah game sederhana maka bahasa pemrograman seperti visual basic pun dapat digunakan untuk menciptakan game.

  • CONTOH – CONTOH BAHASA PEMROGRAMAN

Berikut ini adalah beberapa contoh bahasa pemrograman yang paling sering digunakan untuk membuat sebuah program.
Java
Java merupakan bahasa Pemrograman yang dapat dijalankan di berbagai platform, dari mulai komputer sampai perangkat mobile. Bahasa Pemrograman ini awalnya dikembangkan pada The Green Project pada Tahun 1991 oleh Sun Microsystem yang kemudian dilepas tangan kepada Oracle. Nama Java sendiri ini dipikih karena salah seorang pendiri Java, Yaitu James Gosling, Ia sangat menyukai kopi murni yang langsung digiling dari mesin giling atau kopi tubruk istilahnya dimana kopi jenis ini berasal dari pulau Jawa di Indonesia untuk itu bahasa Pemrograman ini diberi nama JAVA. Java sudah menjadi salah satu bahasa Pemrograman terpopuler, karena bahasa Pemrograman ini memiliki banyak kelebihan seperti misalnya bisa berjalan di sistem operasi yang berbeda, kemudian bahasa Pemrograman ini juga termasuk kedalam Pemrograman OOP atau disebut juga Pemrograman Orientasi Objek, sehingga programmer akan lebih mudah dalam menyusun proram untuk menggunakan bahasa ini. Selain itu bahasa Pemrograman ini juga memiliki library yang lengkap sehingga akan sangat memudahkan programmer dalam mengelola dan menyusun suatu program.
PHP
Php atau kepanjangan dari PHP Hypertext Pre-processor merupakan bahasa Pemrograman yang paling banyak digunakan di indonesia. Selain penggunaanya gratis, PHP banyak digunakan karena bahasa Pemrograman ini termasuk server side scripting yang memang dirancang untuk membangun website dinamis. Selain itu banyak website-website ternama yang menggunakan PHP seperti Facebook, WordPress, ataupun Digg. PHP pertama kali dikembangkan oleh Rasmus Lerdorf pada tahun 1995. Pada waktu ini PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari web.
C
Bahasa Pemrograman C ini termasuk sebagai salah satu bahasa Pemrograman tertua yang pernah ada. Bahasa ini dikembangkan dari sekitar tahun 70-an. Pembuat bahasa C adalah Dennis Ritchies. Bukan tanpa sebab bahasa C ini menjadi dasar untuk dipelajari dalam bahasa Pemrograman yang lain, sebab memang bahasa C ini merupakan “bapak” dari bahasa Pemrograman lain seperti C#, C++, Java, dan lain sebagainya. Bahasa C ini juga salah satu bahasa Pemrograman yang popuer di Indonesia karena hampir sebagian besar perguruan tinggi jurusan IT menggunakan bahasa pemogrman ini untuk dipelajari pertama kali sebelum mempelajari bahasa Pemrograman yang lainnya.
Visual Basic
Visual Basic adalah bahasa Pemrograman yang dikembangkan oleh suatu perusahaan multinasional yaitu Microsoft. Bahasa Pemrograman ini menawarkan IDE visual dalam pembuatan software, dan bahasa Pemrograman ini dikembangkan untuk membangun software-software berbasis Windows. Visual Basic sendiri ini adalah keturunan dari bahasa Pemrograman BASIC. Sebuah lembaga survey pada tahun 2005 menunjukan 62% bahwa developer software menggunakan Visual Basic dalam pengembangan Software nya, sehingga hal tersebut menjadikan Visual Basic menjadi salah satu bahasa pemogrman yang banyak diminati atau populer.
Python
Dalam tingkatan bahasa Pemrograman Python termasuk kedalam bahasa tingkat tinggi. Python juga menjadi salah satu bahasa Pemrograman yang dapat membangun aplikasi berbasis web maupun berbasis mobile. Bahasa Python ini juga termasuk kedalam bahasa Pemrograman yang mudah dipelajari bagi pemula, karena bahasa ini mudah untuk dibaca dengan syntax yang mudah untuk dipahami juga. Bayak sekali perusahaan besar yang menggunakan Python dalam pengembanganya seperti Pinterest, Instagram, dan Rdio. Python ini juga digunakan oleh para pengembang seperti Yahoo, Google, dan juga NASA.
C++
C++ merupakan bahasa Pemrograman yang dikembangkan oleh Bjarne Stroustrup, bahas ini merupakan bahasa Pemrograman dari bahasa C yaitu C dan C++. Kedua bahasa Pemrograman ini memiliki sintaks penulisan yang hampir sama, meski begitu kedua bahasa ini juga memiliki perbedaan pada penyelesaian masalahnya. Pada bahasa C penyelesaian masalahnya yaitu dilakukan dengan membagi-bagi kedalam sub-sub masalah yang lebih kecil atau biasa disebut dengan Bahasa Pemrograman prosedural, Sedangkan untuk C++ berorientasi pada objek dimana permalasahan dibagi-bagi kedalam class-class. C++ ini juga menjadi bahasa Pemrograman yang populer karena banyak perusahaan-perusahaan software besar yang menggunakan bahasa ini untuk mengembangkan softwarenya seperti Firefox, Adobe, maupun Winamp yang sekarang pengembanganya sudah dihentikan.
Javascript
Javascript merupakan bahasa Pemrograman yang dikembangkan oleh Netscape. Penggunaan JavaScript untuk saat ini kebanyakan terdapat pada pengembangan suatu web. Dengan menggunakan bahasa yang satu ini kita dapat membuat web yang interaktif dan menarik.
Actionscript
ActionScript merupakan bahasa Pemrograman yang dibuat berdasarkan ECMAScript yang dapat digunakan dalam pengembangan situs web dan software yang menggunakan platform Adobe Flash Player. Bahasa Pemrograman ini juga dipakai pada beberapa aplikasi berbasis data, seperti Alpha Five. Bahasa ini awalnya dikembangkan oleh Macromedia, Tapi kini sudah dimiliki dan dilanjutkan oleh perkembangan oleh Adobe, yang memberi Macromedia pada tahun 2005 yang lalu.

Demikian artikel mengenai Pengantar Algoritma Dan Pemrograman ini, Semoga bermanfaat.




SUMBER

  • https://id.wikipedia.org/wiki/Algoritme
  • http://blograkata.blogspot.com/2012/04/bentuk-bentuk-dasar-algoritma.html
  • https://www.maxmanroe.com/vid/teknologi/pengertian-algoritma.html
  • https://www.miamidish.net/technology/pengertian-pemrograman-sejarah-jenis-dan-contohnya/
  • https://www.google.com/urlsa=i&source=images&cd=&ved=2ahUKEwiItbzf987mAhUNYysKHRnrANIQjRx6BAgBEAQ&url=https%3A%2F%2Fwww.pintarkomputer.org%2F2017%210%2Fpengertian-program-komputer.html&psig=AOvVaw2PivrvcV98irSpJw9n3kk&ust=1577299228088817
  • https://www.google.com/urlsa=i&source=images&cd=&ved=2ahUKEwjXruL6987mAhUX6XMBHbGxDncQjRx6BAgBEAQ&url=https%3A%2F%2Fwww.levatra.com%2F2017%2F02%2Fpengertian-algoritma-dan-program-dalam-bahasa-pemrograman.html&psig=AOvVaw1qyA4fztNFK8Y4Qu2KbKDS&ust=1577299306350118