Bahasa pemrograman semakin banyak dipelajari
oleh banyak orang. Hal ini terkait dengan kemajuan zaman yang menjadikan
teknologi sebagai hal penting untuk menunjang kemajuan. Bagi pembaca yang ingin
mempelajari bahasa pemrograman, hal dasar yang harus dipahami adalah algoritma
pemrograman tersebut. Untuk mengerti apa itu algoritma pemrograman, silahkan
simak pembahasan di bawah ini.
Dalam matematika dan ilmu komputer, algoritma
adalah urutan atau langkah-langkah untuk penghitungan atau untuk menyelesaikan
suatu masalah yang ditulis secara berurutan. Sehingga, algoritma pemrograman
adalah urutan atau langkah-langkah untuk menyelesaikan masalah pemrograman
komputer.
Dalam pemrograman, hal yang penting untuk
dipahami adalah logika kita dalam berpikir bagaimana cara untuk memecahkan
masalah pemrograman yang akan dibuat. Sebagai contoh, banyak permasalahan
matematika yang mudah jika diselesaikan secara tertulis, tetapi cukup sulit
jika kita terjemahkan ke dalam pemrograman. Dalam hal ini, algoritma dan logika
pemrograman akan sangat penting dalam pemecahan masalah.
Bentuk Dasar Algoritma
Algoritma sendiri mempunyai tiga 3 bentuk
dasar, antara lain :
Algoritma Sekuensial (Sequence Algorithm)
Sequence algorithm atau algoritma sekuensial
merupakan algoritma yang langkah-langkahnya secara urut dari awal hingga akhir.
Bentuk dari algoritma sekuensial ini salah satu contohnya seperti algoritma
memasak air. Langkah demi langkah yang dijalankan harus urut dari atas sampai
bawah.
Algoritma Perulangan (Looping Algorithm)
Looping algorithm atau algoritma perulangan
merupakan suatu algoritma yang menjalankan beberapa langkah tertentu secara
berulang-ulang atau looping. Pada masalah yang kita hadapi, ada pula sebuah
langkah yang harus kita lakukan secara berulang-ulang. Contoh dari algoritma
looping ini adalah algoritma menjemur pakaian:
1) Siapkan jemuran.
2) Ambil satu pakaian yang nantinya akan
dijemur.
3) Peras pakaian tersebut terlebih dahulu.
4) Letakkan pakaian tersebut pada tiang
jemuran.
5) Ulangi langkah dari 2 sampai 4 hingga
pakaian habis.
Dari algoritma di atas, dapat diketahui bahwa
dari langkah 2 sampai 4 harus dilakukan secara berulang-ulang hingga pakaian
habis.
Algoritma Percabangan atau Bersyarat
(Conditional Algorithm)
Conditional algorithm atau algoritma bersyarat
merupakan algoritma yang menjalankan langkah berikutnya apabila terdapat syarat
yang sudah dapat dipenuhi. Berikut salah satu contoh dari algoritma bersyarat :
1) Siapkan panci.
2) Masukkan air secukupnya ke dalam panci.
3) tutup panci tersebut.
4) letakkan panci tersebut di atas kompor.
5) Hidupkan kompor.
6) Apabila air sudah mendidih, lalu matikan
kompor.
7) Angkat panci tersebut dari kompor.
Algoritma bersyarat atau contional algorithm
terdapat pada langkah ke 6. Apabila air sudah mendidih, lalu matikan kompor.
Sehingga apabila air tersebut belum mendidih, maka kompor tidak dimatikan.
Contoh Algoritma
Menentukan Apakah Bilangan Tersebut Ganjil atau Genap
Terdapat bilangan yang bernama bilang bulat
yaitu 0, 1, -1, 2, dst serta bilangan asli 1, 2, 3, 4, 5, dst. Kedua jenis
bilangan tersebut sering digunakan dalam berhitung. Himpunan bilangan-bilangan
bulat dalam buku teks aljabar pada umumnya dinyatakan dengan lambang
"Z" dan himpunan bilangan-bilangan asli dinyatakan dengan lambang
"N". Algoritma guna menentukan apakah bilangan tersebut ganjil atau
genap dapat disajikan dengan flowchart seperti dibawah ini :
Menentukan Apakah Bilangan Tersebut Ganjil
atau Genap
Bilangan genap merupakan sebuah bilangan
bulat yang akan habis atau tidak memiliki sisa jika dibagi 2 (dua). Bilangan
ganjil merupakan sebuah bilangan bulat yang tidak akan habis apabila dibagi 2
(dua).
Menghitung Keliling dan Luas Lingkaran
Lingkaran merupakan suatu himpunan dari semua
titik-titik pada bidang dalam jarak yang tertentu dan disebut dengan jari-jari
dari titik tertentu dan dapat disebut titik pusat. Lingkaran merupakan contoh
dari kurva tertutup sederhana, lingkaran membagi bidang menjadi bagian luar dan
dalam. Algoritma menghitung keliling serta luas lingkaran dapat disajikan
dengan flowchart seperti dibawah ini :
Menghitung Keliling dan Luas Lingkaran
Menampilkan Bilangan Ganjil Diantara 10
sampai 30
Bilangan ganjil yang terletak diantara 10 dan
30 11,13,15, dan seterusnya. Namun, yang akan ditampilkan kecuali bilangan 21
dan 27. Jadi output yang diharapkan dari algoritma tersebut adalah bilangan
ganjil 10 sampai 30 kecuali bilangan 21 dan 27. Algoritma untuk menampilkan
bilangan ganjil antara 10 hingga 30 kecuali bilangan 21 dan 27 disajikan dengan
flowchart dibawah ini :
Menampilkan Bilangan Ganjil Diantara 10
sampai 30
Algoritma tahun Kabisat
Terdapat juga algoritma tahun kabisat. Tahun
kabisat merupakan sebuah tahun yang memiliki tambahan 1 hari dan bertujuan agar
kalender dapat sinkron dengan musim tahunan dan keadaan astronomi. Bulan
Februari memiliki 29 hari pada saat tahun kabisat. Tahun yang dapat untuk
dibagi dengan 4 adalah tahun kabisat. Algoritma guna menentukan tahun kabisat jika
disajikan dengan flowchart seperti dibawah ini :
Algoritma tahun Kabisat
Menampilkan Bilangan Genap Mullai dari Angka
2 sampai n, Kecuali Bilangan Genap yang Kelipatan 4
Bilangan genap merupakan sebuah
bilangan-bilangan bulat yang habis jika dibagi 2. Deret yang ditampilkan dari
algoritma kali ini merupakan deret dari bilangan genap dari 2 hingga ke n
kecuali bilangan yang merupakan kelipatan 4. Algoritma tersebut dapat
digambarkan dengan flowchart seperti dibawah ini :
Menampilkan Bilangan Genap Mullai dari Angka
2 sampai n, Kecuali Bilangan Genap yang Kelipatan 4
Menghitung Harga yang Dibayar Setelah
Mendapatkan Sebuah Diskon
Ada juga algoritma yang dapat menghitung
jumlah dari biaya yang harus dibayar oleh sang pembeli setelah mendapatkan
sebuah diskon 10% dengan syarat jumlah dari total pembelian tersebut
Rp.1.500.000,- Algoritma guna menghitung besaran biaya tersebut dapat
digambarkan dengan flowchart seperti dibawah ini :
Menghitung Harga yang Dibayar Setelah
Mendapatkan Sebuah Diskon
Jumlah barang memiliki sifat yang dinamik
sesuai dengan input atau masukkan dari user. Apabila jumlah total dari harga
tersebut kurang 1500000 maka tidak mendapatkan sebuah diskon.
Mencari Maks dan Min dari suatu Deret
Bilangan
Terdapat juga sebuah algoritma guna mencari
nilai maks serta min dari suatu n deret bilangan yang dimasukkan atau diinput
oleh user. Algoritma tersebut dapat disajikan dengan flowchart seperti dibawah
ini :
Mencari Maks dan Min dari suatu Deret
Bilangan
Kalkulator Sederhana dari 2 Bilangan
Terdapat sebuah algoritma sebagai kalkulator
sederhana untuk operasi penjumlahan, perkalian, pembagian, dan pengurangan.
Kalkulator sederhana ini hanya dapat melakukan perhitungan dari 2 bilangan yang
diinput oleh user. Algoritma guna menghitung 2 bilangan dapat digambarkan
dengan flowchart seperti dibawah ini :
Kalkulator Sederhana dari 2 Bilangan
Menghitung Beberapa Angka dari Suatu Bilangan
Pada flowchart kali ini mengenai sebuah
algoritma untuk menghitung beberapa angka dari suatu bilangan yang dimasukkan
atau diinput oleh user. Berikut flowchart algoritma tersebut.
Menghitung Beberapa Angka dari Suatu Bilangan
Membalik Sebuah Kalimat
Seperti yang kita ketahui sebelumnya tentang
pengertian algoritma, bahwa algoritma juga dapat untuk menampilkan sebuah
kalimat namun dengan urutan yang terbalik. Misalkan "woocara" dibalik
menjadi "aracoow". Struktur data yang digunakan ialah Stack. Untuk
membalik sebuah bilangan, huruf dari kalimat kita input dalam stack dengan
menggunakan metode Push. Setelah stack tersebut sudah terisi, maka output
kembali dengan memakai metode Pop. Pada algoritma membalik sebuah kalimat,
adanya penggunaan struktur data stack diimplementasikan ke array. Dalam
implementasinya ke array tersebut, kita harus terlebih dahulu menyiapkan sebuah
array dengan memiliki panjang yang sama dengan jumlah huruf yang ada dalam
kalimat yang akan dibalik tersebut. Pada gambar flowchart dibawah ini, terdapat
tiap huruf dari kalimat yang diinput pada array dengan index ke-0 hingga ke-n
dengan memakai metode push.
Membalik Sebuah Kalimat
Kemudian huruf tersebut akan mengeluarkan
kata mulai dari index ke-n hingga index ke-0.
Itulah pengertian algoritma, bentuk dasar
algoritma, klasifikasi algoritma, dan contoh algoritma. Algoritma sangat
diperlukan untuk mengolah data yang ada di komputer.