Bahasa Pemrograman yang kita kenal ada banyak, 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.
Bahasa pemrograman komputer yang kita kenal antara lain adalah Java, Visual Basic, C++, C, Cobol,
PHP, .Net (dot Net), dan ratusan bahasa lainnya. Namun tentu saja kebutuhan bahasa ini harus
disesuaikan dengan fungsi dan perangkat yang menggunakannya.
Secara umum bahasa pemrograman terbagi menjadi 4 kelompok, yaitu:
• Object Oriented Language (Visual dBase, Visual FoxPro, Delphi, Visual C)
• High Level Language (seperti Pascal dan Basic)
• Middle Level Language (seperti bahasa C), dan
• Low Level Language (seperti bahasa Assembly)
2. Interpretasi (Interpretation)
Bahasa yang menggunakan teknik interpretasi akan membaca kode sumber perbaris dan dieksekusi
perbaris. Jika ditemukan kesalahan dalam penulisan program maka di baris kesalahan itulah program
akan dihentikan. Program yang melakukan tugas ini disebut Interpreter. Pada teknik interpretasi tidak
ada akan dihasilkan program standalone, artinya untuk menjalankan program kita harus mempunyai
kode sumbernya sekaligus interpreter program tersebut. Bahasa yang menggunakan teknik
interpretasi misalnya bahasa Perl, Python, Ruby dan masih banyak lagi.
Meskipun setiap bahasa pemrograman dibuat untuk membuat program namun setiap bahasa dibuat
dengan tujuan dan fungsi yang berbeda-beda. Misalnya untuk membuat driver hardware kita tidak
bisa menggunakan bahasa Visual Basic. Untuk membuat program berbasis sistem seperti driver kita
bisa gunakan bahasa C atau Assembly. Contohnya sistem operasi linux yang open source. Jika anda
melihat kode sumbernya anda akan menemukan bahwa linux dibuat menggunakan bahasa C.
Sedangkan untuk pemrograman desktop kita bisa menggunakan Visual Basic. Bahasa tersebut
dirancang oleh Microsoft untuk pemrograman desktop dengan tampilan GUI.
Terdapat 5 bahasa pemrograman populer yang digunakan oleh developer di seluruh duniaseperti:
Java, PHP, Python, C, dan C++.
Java adalah bahasa pemrograman yang paling populer digunakan di dunia untuk saat ini.
Awalnya Java dikembangkan pada tahun 1991 dalam proyek Green yang dipimpin oleh
Microsystem melepasnya. Java ini merupakan salah satu bahasa pemrograman yang
Bahasa pemrograman Java ini populer di kalangan developer Android karena rata-rata untuk
Awalnya PHP merupakan singkatan dari Personal Home Page dan seiring berjalannya waktu
singkatan PHP menjadi PHP : Hypertext Propocesor. Bahasa pemrograman ini sendiri
website dinamis karena teknologinya yang server side scripting. Dengan teknologi
pemrograman web ini membuat skript dikompilasi atau diterjemahkan di server sehingga
Bahasa pemrograman ini juga dapat digunakan untuk membuat CMS. Beberapa CMS yang
Bahasa pemrograman yang satu ini menjadi populer karena mudah dipelajari dan bertenaga.
Python sendiri awalnya dirancang oleh Guido Van Rossum pada tahun 1991. Nama Python
sendiri berawal dari acara komedi Monty Python yang hit di tahun 70-an.
Python merupakan bahasa pemrograman interpretatif yang memiliki kapabilitas, kemampuan
dengan sintaksis kode yang jelas dan fungsionalitas pustaka standar yang besar serta
komprehensif,. Bisa dibilang sintaks-sintaks yang ditawarkan oleh Python ini dapat dengan
mudah dipahami dan dipelajari. Salah satu perusahaan besar yang menggunakan Python ini
adalah Google.
C++ merupakan bahasa pemrograman yang dikembangkan oleh Bjarne Stroust pada tahun
1980-an yang merupakan pengembangan dari bahasa C. Salah satu hal paling mendasar
yang membedakan C++ dengan bahasa C adalah dukungan terhadap konsep pemrograman
Dengan menggunakan C++ ini developer dapat mengembangkan perangkat lunak yang
bertenaga seperti game dan apikasi desktop pada komputer. Selain itu, C++ ini banyak
digunakan sebagai dasar dari algoritma dan pemrograman pada beberapa universitas di
Indonesia.
Bahasa Pemograman C
Biasanya bahasa pemrograman yang satu ini diajarkan pada tingkat awal pada jurusan TI
perguruan tinggi di Indonesia sebagai penunjang mata kuliah algoritma dan dasar
developer juga banyak yang mengembangkan perangkat lunak dengan menggunakan C ini.
Telah banyak bahasa pemrograman yang merupakan turunan dari C ini seperti C++, C#, dan
Beberapa manfaat yang akan didapatkan setelah mempelajari logika antara lain:
1) Menjaga supaya kita selalu berpikir benar menggunakan asasasassistematis.
2) Membuat daya pikir menjadi lebih tajam dan menjadikannya lebih berkembang.
3) Membuat setiap orang berpikir cermat, objektif, dan efektif dalam berkomunikasi.
4) Meningkatkan cinta kebenaran dan menghindari kesesatan bernalar.
Bagaimana dengan perbandingan otak kanan yang dominan lebih berwarna dan manusiawi, jika
hanya lebih mengutamakan logika tanpa rasa? Layakkah mahasiswa diajarkan seperti robot dengan
program dan perintah tanpa rasa? Dalam memberikan penjelasan, akankah lebih baik moderat dan
digambarkan dengan baik? Cara kerja otak lebih nyata jika divisualisasikan. Salah satu fungsi logika
adalah sebagai alat untuk menarik kesimpulan. Kita dapat menggunakan alat ini setelah melakukan
penalaran berdasarkan pernyataan-pernyataan benar (premis) yang ada. Penalaran untuk penarikan
kesimpulan dibedakan menjadi dua jenis, yaitu pola nalar deduktif dan induktif.
a. Deduktif
Penarikan kesimpulan yang bergerak dari pernyataan benar yang umum ke khusus.
Contoh:
Umum Semua mahasiswa belajar harus disiplin dan bertanggung jawab. Khusus Sandi adalah
Mahasiswa yang belajar dikelas.
e. Algoritma Program
Setelah mempelajari logika yang terkait tentang “bagaimana manusia berpikir dengan benar”,
selanjutnya akan membahas tentang “bagaimana cara penyelesaian yang baik”. Untuk mendapatkan
cara penyelesaian yang baik, dibutuhkan strategi atau langkah-langkah yang sistematis agar dapat
memecahkan masalah dengan cara terbaik. Cara berfikir ini dikenal dengan Algoritma.
Awalnya algoritma digunakan untuk penghitungan dalam ilmu matematika namun dalam
perkembangannya algoritma justru banyak dipakai pada bidang pemrograman komputer. Dalam hal
penciptaan sebuah program komputer, algoritma merupakan salah satu konsep dasar yang menjadi
fondasi untuk menciptakan karya pemograman efisien, efektif dan terstruktur. Definisi Algoritma
adalah suatu proses atau serangkaian aturan dalam perhitungan proses pemecehan masalah.
Dengan kata lain algoritma adalah serangkaian
prosedur motode atau urutan sistematis, logis dan terstruktur digunakan untuk memecahkan suatu
permasalahan secara efisien dan efektif.
Menurut Sejarah, kata algoritma berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja'far
Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-
Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya "Buku pemugaran
dan pengurangan" (The book of restoration and reduction). Dari judul buku itulah diperoleh akar kata
"Aljabar" (Algebra).
Perubahan kata dari algorism menjadi algorithm muncul karena kata algorism sering dikelirukan
dengan arithmetic, sehingga akhiran usm berubah menjadi uthm.Karena perhitungan dengan angka
Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai
sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.
Dalam bahasa Indonesia,kata algorithm diserap menjadi algoritma.
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis
dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus
logis dan harus dapat ditentukan bernilai salah atau benar.
Algoritma merupakan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis
dan logis. Langkah-langkah ini dapat diterjemahkan secara bertahap dari awal hingga akhir.
Sekarang ini, algoritma juga dikenal sebagai jantung dari ilmu komputer atau informatika. Hal ini
disebabkan banyaknya cabang ilmu komputer yang diacu dalam terminologi algoritma, contohnya
sebagai berikut.
Implemetasi algoritma atau penerapan algoritma ini sangat umum digunakan, oleh praktisi,
akademisi, atau orang awam. Terkadang seorang awam tersebut tidak menyadari bahwasanya ia
telah menganalisa dan melakukan teknik algoritma. Praktisi peniliti ilmu kedoktoran misalnya,
melakukan penerapan algoritma ketika meneliti kejadian proses yang dilakakukan tubuh manusia
menerima asupan makanan hingga masuk pencernaan, masuk ke sel darah otak dan hingga akhirnya
menghasilkan tenaga.
Struktur Algoritma disusun dari bagian Kepala header berisikan tentang keterangan permasalahan
yang akan diimplementasikan ke dalam algoritma, pendeklarasian adalah tahapan penetapan
variabel atau ikatan objek yang terikat dengan tipe data dari bagian kerangka kepala header dan
tahap akhir deskripsi tahapan rincian penyelesaian masalah yaitu berisikan tentang langkahlangkah
sitematis logis menyelasaikan masalah hingga menghasilkan solusi atau ouput.
1. Siapkan tauge, tempe, cabai, bawang merah, bawang putih, lengkuas, dan bahan lain yang
diperlukan.
2. Iris bawang merah, bawang putih, cabai, danlengkuas.
3. Panaskan minyak dan masukkan semua irisanbahan.
4. Goreng tempesebentar.
5. Tambahkan tauge, kecap manis, garam, dan sedikitair.
6. Aduk hingga semua bumbumeresap.
7. Cicipi rasanya. Jika terdapat rasa yang kurang, tambahkan bumbu lain secukupnya.
8. Tauge tumis siap dihidangkan.
Contoh di atas merupakan penyelesaian masalah dengan mengggunakan langkah-langkah
penyelesaian masalah yang dinamakan algoritma. Algoritma adalah serangkaian langkah yang
disusun menjadi urutan logis kegiatan untuk mencapai tujuan.Setiap hari, ketika seseorang
melakukan aktivitas, dia akan memilih mana yang akan dikerjakan terlebih dahulu, misalnya ketika
bangun tidur, sarapan, bahkan ketika memakai pakaian di
pagi hari. Algoritma yang baik merupakan tindakan yang benar dan masuk akal. Terdapat berbagai
bentuk cara untuk mengomunikasikan algoritma, antara lain menggunakan baganalir, pseudocode,
dan Bahasa pemrograman. Bentuk algoritma yang mudah dibaca adalah menggunakan bagan alir.
c) Dengan diagram alur atau flowchart: yaitu dengan membuat suatu penulisan atau penyajian
algoritma berupa diagram yang menggambarkan susunan alur logika dari suatu permasalahan.
5. Bagaimana menguji program dari suatu algoritma, yaitu dengan cara menyajikannya dalam salah
satu bahasa pemrogramana, misalnya BASIC, PASCAL, FORTRAN, JAVA,C++, atau yang lainnya.
Dalam proses, 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 di sini adalah error atau salah dalam
Fase Profilling, yaitu fase yang akan bekerja jika program tersebut sudah benar atau 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
Waktu tempuh (Running Time) dari suatu algoritma: adalah satuan waktu yang ditempuh atau
1. Banyaknya langkah: Makin banyak langkah atau instruksi yang digunakan dalam
menyelesaikan masalah, maka makin lama waktu tempuh yang dibutuhkan dalam proses
tersebut.
2. Besar dan jenis input data: Besar dan jenis input data pada suatu algoritma akan sangat
berpengaruh pada proses perhitugan yang terjadi. Jika jenis data adalah tingkat ketelitian
tunggal (Single precision), maka waktu tempuh akan menjadi relatif lebih cepat dibandingkan
3. Jenis operasi: Waktu tempuh juga dipengaruhi oleh jenis operasi yang digunakan. Jenis
operasi tersebut meliputi operasi matematika, nalar atau logika, atau yang lainnya. Sebagai
contoh, operasi perkalian atau pembagian akan memakan waktu lebih lama dibandingkan
4. Komputer dan kompilator: hal terakhir yang mempengaruhi waktu tempuh suatu proses
algoritma adalah komputer dan kompilatornya, walaupun sebenarnya faktor ini diluar tahap
rancangan atau tahap pembuatan algoritma yang efisien. Algoritma dibuat untuk mencapai
waktu tempuh yang seefektif dan seefisien mungkin, tetapi kesemuanya itu akan sangat
bergantung pada kemampuan komputer yang tentunya harus sesuai dengan jumlah program
atau langkah yang diperlukan oleh algoritma, begitu juga dengan kompilator tersebut,
misalnya PC XT 8086 akan kalah cepat dibandingkan 8088 atau dengan AT 80286 atau
Jumlah Memori Yang digunakan: banyaknya langkah yang digunakan dan jenis variabel data
yang dipakai dalam suatu algoritma akan sangat mempengaruhi penggunaan memori. Dalam
hal ini, diharapkan dapat memperkirakan seberapa banyak kebutuhan memori yang
diperlukan selama proses berlangsung hingga proses selesai dikerjakan. Dengan demikian,
dapat disiapkan storage yang memadai agar proses suatu algoritma berjalan tanpa ada
Sifat-Sifat Algoritma
Banyaknya langkah instruksi harus berhingga: pelaksanaan sebuah algoritma yang
terprogram haruslah dapat diakhiri atau diselesaikan melalui sejumlah langkah operasional
yang berhingga. Jika tidak demikian, kita tidak akan dapat mengharapkan bahwa pelaksaan
Langkah atau instruksi harus jelas: artinya bahwa penulisa setiap langkah yang terdapat
didalam sebuah algoritma harus memiliki arti yang khusus atau spesifik sehingga dapat
penulisan langkah bagi manusia (pesudocode). Manusia akan lebih mudah memahami
algoritma yang terdiri atas simbol-simbol (Contoh: pembuatan algoritma dengan diagram
dengan kode-kode yang dituangkan dalam bahasa yang dimengerti oleh komputer itu sendiri
(bahasa pemrograman).
Proses harus jelas dan mempunyai batasan: rangkaian suatu proses yang berisi langkah-
langkah instruksi dari suatu algoritma yang akan dilaksanakn harus ditetapkan dengan jelas,
baik dan pasti sebab sebuah algoritma harus memiliki instruksi dasar tertentu dimana setiap
instruksi harus memiliki unsur pelaksana yang berfungsi sebagai pemroses data yang akan
dimasukkan dalam sebuah komputer. Dengan demikian, sebuah algoritma harus ditulis
dengan jelas tentang batasa-batasan proses yang akan dilaksanakan oleh komputer.
Input dan Output harus mempunyai batasan: input merupakan data yang dimasukkan ke
dalam algoritma yang untuk kemudian akan dilaksanakan oleh komputer. Dengan begitu,
input yang diberikan harus sesuai dengan jenis dari bahasa pemrograman yang digunakan,
sedangkan ouput merupakan hasil yang diperoleh dari pekerjaan yang dilaksanakan
komputer untuk kepentingan user yang merupakan pihak diluar komputer. Algoritma harus
menghasilkan output karena merupakan solusi yang diharapkan dari suatu masalah yang
timbul.
Efektifitas: instruksi yang diberikan pada komputer agar hanya menjalankan atau
melaksanakan proses yang mampu dilaksanakannya. Yang dimaksud mampu adalah bahwa
suatu algoritma atau instruksiinstruksi dalam sebuah program hanya akan dapat
dilaksanakan jika informasi yang diberikan oleh instruksi-instruksi tersebut lengkap, benar
dan jelas.
Adanya batasan ruang lingkup, sebuah algoritma yang baik adalah hanya ditujukan bagi
suatu masalah tertentu saja. Susunan input harus ditentukan lebih dulu sebab susunan