A.
Algoritma
Pemrograman
komputer danalgoritma pemrograman adalah duahal yang tidak dapat
dipisahkankarena pembuatan programkomputer akan lebih sulit dan lamatanpa
mengetahui dengan pastibagaimana algoritma penyelesaianmasalahnya. Sebelum
mengetahuilebih lanjut apa yang dimaksuddengan algoritma pemrograman, kitabahas
dahulu apa yang dimaksuddengan pemrogramankomputer atauprogram komputer.
Definisi
program computer adalah sederetan perintah-perintah (instruksi) yang harus
dikerjakan oleh komputer untuk menyelesaikan masalah. Deretan perintah-perintah
tersebut tidak bisa kita tulis secara sembarangan atau semau kita tetapi harus
teratur agar komputer dapat memahami dan memprosesnya dengan baik sehingga
permasalahan yang ada dapat diselesaikan dengan baik pula.
Untuk
itulah diperlukan algoritma karena definisi dari algoritma itu sendiri menurut
Microsoft Press Computer and Internet Dictionary (1998) adalah urutan langkah
logis tertentu untuk memecahkan suatu masalah. Yang ditekankan adalah urutan
langkah logis, yang berarti algoritma harus mengikuti suatu urutan tertentu,
tidak boleh melompat-lompat dan disusun secara sistematis. Sedangkan yang
dimaksud dengan langkah-langkah logis adalah kita harus dapat mengetahui dengan
pasti setiap langkah yang kita buat.
Menurut
Sjukani (2005), algoritma adalah alur pemikiran dalam menyelesaikan suatu
pekerjaan yang dituangkan secara tertulis. Yang ditekankan pertama adalah alur
pikiran, sehingga algoritma seseorang dapat berbeda dari algoritma orang lain.
Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat,
gambar, atau tabel tertentu. Jadi dapat disimpulkan bahwa algoritma lebih
merupakan alur pemikiran untuk menyelesaikan suatu pekerjaan atau suatu masalah
daripada pembuatan program komputer. Algoritma inilah yang kemudian dijadikan
landasan (pedoman) untuk membuat programkomputer.
Meskipun
algoritma tidak dapat dipisahkan dengan pemrograman komputer tetapi jika
andaberanggapan bahwa algoritma identic dengan pemrograman komputer, anda salah
besar. Hal ini dikarenakan dalam kehidupan sehari-haripun seringkali kita
berhadapan dengan masalah-masalah yang kalau kita cermati mengikuti
kaidah-kaidah penyelesaian secara algoritma. Misalkan saja cara-cara memasak
mie instan, membuat kopi atau teh, memasak makanan yang dinyatakan dalam bentuk
resep, dan masih banyak lagi yang semuanya itu dapat kita sebut sebagai
algoritma. Pada mie instan misalnya, biasanya pada bungkusnya terdapat urutan
langkahlangkah bagaimana cara memasak atau menyajikannya. Bila langkah-langkah tersebut tidak logis, maka dapat
dipastikan bahwa kita akan
memperoleh hasil yang tidak sesuai dengan yang diharapkan. Kita harus membaca satu demi satu langkah-langkah pembuatannya kemudian mengikutinya agar memperoleh hasil yang baik. Yang harus diingat disini adalah kita tidak harus mengikuti langkahlangkah yang sudah diberikan, tetapi kita dapat memodifikasinya atau bahkan membuat resep atau cara baru yang lebih baik tetapi menghasilkan hal yang sama (mempunyai tujuan yang sama), yaitu dapat menikmati hasil masakan.Demikian juga dengan pemrograman komputer, kita juga tidak harus mengikuti algoritma yang sudah ada, tetapi kita dapat menambah ataupun mengurangi bahkan membuat algoritma yang baru asalkanpermasalahan yang ada dapat terpecahkan dengan baik.
memperoleh hasil yang tidak sesuai dengan yang diharapkan. Kita harus membaca satu demi satu langkah-langkah pembuatannya kemudian mengikutinya agar memperoleh hasil yang baik. Yang harus diingat disini adalah kita tidak harus mengikuti langkahlangkah yang sudah diberikan, tetapi kita dapat memodifikasinya atau bahkan membuat resep atau cara baru yang lebih baik tetapi menghasilkan hal yang sama (mempunyai tujuan yang sama), yaitu dapat menikmati hasil masakan.Demikian juga dengan pemrograman komputer, kita juga tidak harus mengikuti algoritma yang sudah ada, tetapi kita dapat menambah ataupun mengurangi bahkan membuat algoritma yang baru asalkanpermasalahan yang ada dapat terpecahkan dengan baik.
B. Ciri
Algoritma
Oleh
karena algoritma digunakanuntuk memecahkan suatupermasalahan maka
algoritmatersebut harus menghasilkan suatujawaban atas permasalahan
tersebut.Dengan kata lain algoritma harusmemiliki paling tidak satu
keluaran.Sedangkan masukan dari algoritmadapat nol (tidak ada) atau
banyakmasukan (data). Yang dimaksud
dengan
nol masukan adalah jikaalgoritma itu hanya untukmenampilkan suatu informasi
saja. Misalnya output “Hello World” yangsering kita temukan
pada tutorial-tutorial
saat kita baru belajarmembuat program dari suatu Bahasapemrograman tertentu.
Kedua
haldiatas, memiliki paling sedikit
satukeluaran dan dapat memiliki nol ataubanyak masukan, merupakan duadari
beberapa ciri algoritma.Tugas algoritma dikatakanselesai kalau algoritma
tersebutsudah menghasilkan satu atau lebihjawaban atas permasalahan yangada.
Dengan demikian setelahmengerjakan langkah-langkahpenyelesaian masalah,
makaalgoritma tersebut harus berhentitidak melakukan proses apapun.Berhenti di
sini artinya adalah jikaditerjemahkan ke dalam bentukprogram dan program
dijalankan,maka setelah menghasilkan suatuoutput, program dapat
langsungberhenti atau menunggu instruksilebih lanjut dari pengguna
programseperti mengulang perhitungan lagi,keluar program (menghentikanprogram),
dan lain sebagainya.Dengan demikian ciri ketiga darialgoritma adalah setelah
selesaimengerjakan langkah-langkahpenyelesaian masalah, algoritmaharus
berhenti.
Ciri
keempat dari algoritmaadalah setiap langkah yang dibuatharus dibuat sesederhana
mungkintetapi efektif agar dapat dipahamioleh pemroses (manusia maupunkomputer)
sehingga dapatdiselesaikan dalam waktu yangsingkat serta masuk akal.
Sedangkanciri yang terakhir adalah setiaplangkah dalam algoritma
harusdidefinisikan dengan tepat dan jelassehingga tidak berarti-dua(ambiguitas)
sehingga menimbulkankesalahan dalam penafsiran olehpemroses.
C.
Penerapan Algoritma
Berikut
adalah contohpemecahan masalah (algoritma)yang diambil dari
permasalahanyangmungkin sering kita hadapi dalamkehidupan kita sehari-hari.
Diketahuidua buah ember A dan B dimanaember A berisi air dan ember B
berisiminyak tanah. Jika diinginkan isikedua ember itu saling ditukarsehingga
ember A berisi minyaktanah dan ember B berisi air,bagaimanakah caranya? Apakahcukup
dengan cara (membuatalgoritma), tuangkan isi ember A keember B dan kemudian
tuangkan isiember B ke ember A? Apakahpermasalahan dapat diselesaikandengan
cara (algoritma) tersebut?Jawabannya adalah tidak, karenaalgoritma tersebut
tidak logis danhasilnyapun tidak sesuai denganyang diinginkan karena algoritmatersebut
akan menghasilkan ember Aakan berisi campuran air dan minyaktanah sedangkan
ember B akankosong.
Bagaimanakah
cara (algoritma)yang benar dari permasalahantersebut? Algoritma yang
benaradalah pindahkan dahulu isi ember Ake ember lain (misal ember C),kemudian
setelah ember A kosongpindah isi ember B ke ember A.Langkah terakhir adalah
mengisiember B dengan minyak tanah yangada di ember C. Inilah algoritma
yangpaling logis dan menghasilkanjawaban yang benar ataspermasalahan tersebut.
Seperti
yang telah dikemukakansebelumnya, setiap orangmempunyai cara pemecahan sendiri-sendiri sehingga setiap
orangdimungkinkan mempunyai algoritmayang berbeda-beda untukmemecahkan suatu
permasalahanyang sama. Contohnya adalahpermasalahan di atas. Langkahpertama bisa
saja yang dipindahbukan isi ember A ke ember C dulu,tetapi isi ember B yang
dipindahkanke dalam ember C terlebih dahulu.Setelah itu baru memindahkan
isiember A ke dalam ember B danterakhir memindah isi ember C keember A.
Algoritma ini sedikitberbeda tetapi tetap menghasilkanjawaban yang sama atas
persoalanyang ada.
D.
Notasi Algoritma
Algoritma
mempunyai aturanpenulisan sendiri yang disebutdengan notasi algoritma.
Notasialgoritma ini tidak tergantung darispesifikasi bahasa pemrogramantertentu
dan komputer yangmengeksekusinya. Hal inidikarenakan notasi algoritmabukanlah
notasi Bahasapemrograman. Notasi algoritmamerupakan bahasa universal yangdapat
diterima oleh semua Bahasapemrograman yang ada. Oleh sebabitu algoritma yang
baik harus dapatditerjemahkan ke dalam bentuksource code dari semua
Bahasapemrograman yang ada.Untuk membuat algoritma darisuatu permasalahan,
biasanyadigunakan salah satu dari tiga buahnotasi algoritma yang dikenal,
yaituuraian kalimat eskriptif, flow chart,atau pseudo code.
Sebagai
contohpermasalahan, jika diinginkan sebuahprogram komputer yang dapatmengetahui
bilangan terbesar daritiga buah bilangan yang dimasukkan.Bagaimanakah algoritmanya?
E. Deskriptif
Algoritma
Algoritma
dengan uraian kalimatdeskriptif adalah notasi algoritmayang paling sederhana
karenaalgoritma ini menggunakan Bahasasehari-hari. Untuk permasalahanyang
sederhana penggunaan notasiini sangatlah mudah, akan tetapiuntuk permasalahan
yang lebihkomplek dan rumit, penggunaannotasi
ini akan lebih sulit dan seringkali terjadi ambigu dalam langlahlangkah
penyelesaian masalah. Olehkarena itulah untuk kasus-kasus yanglebih komplek,
penggunaan notasi inijarang sekali bahkan tidak digunakan.Permasalahan di atas,
yaitumencari bilangan terbesar dari tigabuah bilangan yang dimasukkan,tergolong
permasalahan yangsederhana, jadi algoritmanya masihmudah dan dapat dijelaskan
denganuraian kalimat deskriptif sebagaiberikut:
1.
Masukkan sembarang bilangan sebanyak
tiga buah.
2.
Ambil bilangan pertama dan set maksimum‐nya
sama dengan bilangan pertama.
3.
Ambil bilangan kedua dan bandingkan
dengan maksimum.
4.
Apabila bilangan kedua lebih besar dari
maksimum maka ubah maksimum‐nyamenjadi sama dengan
bilangan kedua.
5.
Ambil bilangan ketiga dan bandingan
dengan maksimum.
6.
Apabila bilangan ketiga lebih besar dari
maksimum maka ubah lagi maksimum‐nya
menjadi sama dengan bilangan ketiga.
7.
Variabel maksimum akan berisi bilangan
yang terbesar dan tampilkan hasilnya.
Algoritma dengan
uraian kalimatdeskriptif seperti di atas sudah jarangsekali kita temukan karena
kadangkala agak sulit untuk memahaminya.Yang paling banyak kita temukanadalah
algoritma (dengan uraiankalimat deskriptif) yang ditulis secaralebih sistematis
dan efisien sehinggalebih mudah untuk memahaminya.
Algoritma
tersebut adalah sebagaiberikut:
1.
Masukkan a, b, dan c.
2.
mak ß
a.
3.
Jika b > mak, kerjakan langkah ke‐4.
Jika tidak, kerjakan langkah ke‐5.
4.
mak ß
b.
5.
Jika c > mak, kerjakan langkah ke‐6.
Jika tidak, kerjakan langkah ke‐7.
6.
mak ß
c.
7.
Tulis mak.
Dalam
notasi algoritma, baikmenggunakan notasi algoritmadengan uraian kalimat
deskriptif, flowchart maupun pseudo code, kita tidakmenggunakan tanda =
(samadengan) tetapi menggunakan
simbolanak panah
ke arah kiri ßsepertiyang
terlihat pada langkah ke-2,4,dan 6. Sebagai contoh pada langkahke-2, arti dari
notasi tersebut adalahnilai variabel a (yang ada di sebelahkanan anak panah)
diberikan kepadavariabel mak (yang ada di sebelahkiri anak panah). Dengan
demikianjika nilai variabel a adalah 10, makanilai mak juga 10 atau
dalampenulisan secara matematis mak = a.
Penggunaan
anak panah inidikarenakan, seperti yang telahdikemukakan sebelumnya,
algoritmatidak diperuntukkan untuk suatubahasa pemrograman tertentu,
tetapidapat diaplikasikan atauditerjemahkan ke dalam bentuksource code dari
semua Bahasapemrograman yang ada.
Dalampascal
misalnya, notasi yangdigunakan untuk tanda = (samadengan) adalah := (titik
duadilanjutkan dengan tanda samadengan) sehingga langkah ke-2 akanditerjemahkan
menjadi mak := a.Akan tetapi dalam bahasa C++maupun Java, tanda = samadengan)
masih tetap digunakansehingga penerjemahannya adalahmak = a
F.
Flow Chart
Notasi
algoritma yang palingbanyak digunakan adalah flow chartkarena bentuknya yang
sederhanadan mudah dipahami. Flow chart(diagram alir) adalah penggambaransecara
grafik dari langkah-langkahpemecahan masalah yang harusdiikuti oleh pemroses.
Flow chartterdiri atas sekumpulan symboldimana masing-masing simbolmenggambarkan suatu
kegiatantertentu.
Flow
chart diawali denganpenerimaan masukan (input),pemrosesan masukan, dan
diakhiridengan menampilkan hasilnya(output).Adapun simbol-simbol yangsering
digunakan untukmenyusunflow chart (dalam microsoft visio)adalah sebagai berikut
:
1)
Masukan
Masukan merupakan
kegiatanpenerimaan data yangdisimbolkan dengan jajarangenjang. Kita dapat
menuliskanmasukan yang diperlukan padasuatu waktu secara satu per satumaupun
secara keseluruhan,akan tetapi untuk alasan efisiensiruang gambar biasanya
masukandituliskan bersamaan secarakeseluruhan.
Gambar 1. Simbol
masukan
2)
Masukan manual
Untuk
masukan secara manualyang dimasukkan melaluikeyboard, atau
perangkatinputlainnya seperti barcode reader,kita dapat menggunakan
symbolmasukan secara manual. Samadengan simbol masukan, padasimbol masukan
manual ini untukalasan efisiensi ruang gambarbiasanya masukan juga
dituliskanbersamaan secara keseluruhan.
Gambar 2. Simbol
masukanmanual
3)
Proses
Data yang dimasukan
kemudiandiproses untuk menghasilkanjawaban atas persoalan yangingin dipecahkan.
Kegiatanmemproses data ini disimbolkandengan persegi panjang. Samaseperti
simbol pada masukan,penulisan operasi-operasi padadata dapat dilakukan secara
satuper satu maupun secarakeseluruhan.
Gambar 3. Simbol
proses
4)
Keluaran
Keluaran adalah hasil daripemrosesan data dan merupakanjawaban atas permasalahan yangada. Keluaran ini harusditampilkan pada layar monitoragar dapat dibaca oleh penggunaprogram. Sama seperti aturanpada simbol-simbol sebelumnya,penulisan hasil pemrosesan datadapat dilakukan secara satu persatu maupun secara keseluruhan.
Gambar
4. Simbol keluaran
5)
Percabangan
Yang dimaksud denganpercabangan
disini adalah suatukegiatan untuk mengecek ataumemeriksa suatu keadaanapakah
memenuhi suatu kondisitertentu atau tidak. Jadi dalampercabangan ini, kita
harusmenuliskan kondisi apa yangharus dipenuhi oleh suatukeadaan. Hasil dari
pemeriksaankeadaan ini adalah YA atauTIDAK. Jika pemeriksaankeadaan
menghasilkan kondisiyang benar, maka jalur yangdipilih adalah jalur yang
berlabelYA, sedangkan jika pemeriksaankeadaan menghasilkan kondisiyang salah,
maka jalur yangdipilih adalah jalur yang berlabelTIDAK. Berbeda dengan
aturanpada simbol-simbol sebelumnya,penulisan kondisi harus dilakukansecara
satu per satu (satu notasipercabangan untuk satu kondisi).
Gambar
5. Simbol percabangan
6)
Sub rutin
Sub
rutin adalah suatu bagiandalam program yang dapatmelakukan (atau diberi)
tugastertentu. Jadi sub rutinmerupakan “program kecil” yangmenjadi bagian dari
suatuprogram yang besar. Sub rutinada dua macam, yaitu prosedur(procedure) dan
fungsi (function).Perbedaan antara keduanyaadalah setelah dipanggil
prosedurtidak mengembalikan suatu nilaisedangkan fungsi selalumengembalikan
suatu nilai.
Dalam
bahasa C++ kedua subrutin tersebut dijadikan satu yaitufunction, sedangkan
untuk Javamenggunakan class dimanakeduanya bisa diatur untuk dapatmengembalikan
nilai atau tidakdapat mengembalikan nilai. Subrutin ini akan didiskusikan
padabab tersendiri.Sub rutin memiliki suatu flowchart yang berdiri sendiri
diluarflow chart utama.
Jadi
dalamsimbol sub rutin, kita cukupmenuliskan nama sub rutinnyasaja, sama seperti
jika kitamelakukan pemanggilan terhadapsuatu sub rutin pada programutama (main
program) yang akananda pelajari pada bagian ataubab lain pada buku ini.
Aturanpenulisan simbol sub rutin samadengan simbol percabangan,yaitu penulisan
nama sub rutindilakukan secara satu per satu.

Gambar 6. Simbol
sub rutin
7)
Arah aliran
Arah
aliran merupakan jalur yangharus diikuti dan merupakan garispenghubung
yangmenghubungkan setiap langkahpemecahan masalah yang adadalam flow chart.
Arah aliran inidisimbolkan dengan anak panah
Gambar
7. Simbol arah aliran
8)
Terminator
Terminator
berfungsi untukmenandai titik awal dan titik akhirdari suatu flow chart.
Simbolterminator ini diberi label MULAIuntuk menandai titik awal dariflow chart
dan label SELESAIuntuk
menandai titik akhir dari flow
chart. Jadi dalam sebuahflow chart harus ada dua symbolterminator, yaitu
symbolterminator untuk MULAI danSELESAI.
9)
Konektor
Konektor
berfungsi untukmenghubungkan suatu langkahdengan langkah lain dalamsebuah flow
chart dengankeadaan on page atau off page.Yang dimaksud dengan konektoron page
adalah konektor yangdigunakan untuk menghubungkansuatu langkah dengan
langkahlain dalam satu halaman.
10) Dokumen
Dokumen
merupakan tampilandata secara fisik yang dapatdibaca oleh manusia. Data
inibiasanya merupakan hasilpemecahan masalah (informasi)yang telah dicetak
(print out).
Berikut adalah flow
chart untukpermasalahan yang diberikan(mencari bilangan terbesar dari
tigabilangan acak yang dimasukkan)
Gambar 11.
Flowchart
G.
Pseudo code
Pseudo
code adalah algoritmayang bentuknya (strukturnya) sangatmirip dengan bahasa
pemrogramankhususnya bahasa pemrogramanterstruktur seperti pascal. Kemiripanini
merupakan keuntungan daripseudo code karena implementasiatau penerjemahan
algoritma kedalam source code suatu Bahasapemrograman sangatlah mudahmeskipun
penggunaannya tidaksepopuler flow chart.Dalam penulisannya, pseudocode harus
terdiri dari tiga bagian,yaitu :
1.
Judul algoritma
Bagian yang terdiri
atas namaalgoritma dan penjelasan(spesifikasi) dari algoritmatersebut. Nama
sebaiknyasingkat dan menggambarkanapa yang dapat dilakukan olehalgoritma
tersebut.
2.
Deklarasi
Bagian untuk
mendefinisikansemua nama yang digunakan didalam program. Nama tersebutdapat
berupa nama tetapan,peubah atau variabel, tipe,prosedur, dan fungsi.
3.
Deskripsi
Bagian ini berisi uraian langkah-langkah penyelesaian masalahyang ditulis
denganmenggunakan aturan-aturan yangakan dijelaskan selanjutnya.Algoritma untuk
permasalahan diatas yaitu mencari bilangan terbesardari tiga bilangan acak
yangdimasukkan dengan menggunakanpseudo code adalah:
Algoritma
bilangan_terbesar
{ a l g o r i
t m a ini mencari bilangan terbesar dari tiga bilangan yang dimasukkan}
Deklarasi
a,b,c,mak : integer
deskripsi
read(a,b,c)
mak ßa
if (mak<b)
makß
b
else if(mak<c)
mak ß
c
end if
write(mak)
Dalam pseudo
code, garisbawah harus digunakan untuk kataalgoritma (yang diikuti oleh judul
darialgoritma), kata deklarasi, katadeskripsi, tipe data, read, write, if,else, end if, for,end for, while, endwhile, do while,
dan end do while
H.
Penerjemahan ke kodesumber
Sebelum
membahas mengenaipenerjemahan algoritma ke dalambentuk source code
Bahasapemrograman (program komputer)C++ atau bahasa lainnya sepertiJava maka
sebaiknya kitamengetahui lebih dahulu langkahlangkah yang biasa dilakukan
untukmembuat suatu program komputer.Langkah-langkah tersebut adalah :
1.
Mendefinisikan permasalahan
Ini
merupakan langkah pertamayang sering dilupakan orang.Menurut hukum Murphy
(HenryLedgard): “Semakin cepatmenulis program, akan semakinlama kita
dapatmenyelesaikannya”. Hal initerutama dirasakan apabila kitamembuat program
untukpermasalahan yang komplek.Oleh karena itu sebelum kitamenulis source code
suatuprogram sebaiknya kitamenentukan ataumengidentifikasi terlebih dahuluinti
dari permasalahannya,kemudian apa saja yang dapatdan harus dipecahkan
denganbantuan komputer, dan yangterakhir adalah apa masukanuntuk programnya
danbagaimana nanti keluarannya.
2.
Menemukan solusi
Setelah
mendefinisikan masalah,maka langkah berikutnya adalahmenentukan solusinya.
Jikapermasalahan terlalu komplek,maka ada baiknya masalahtersebut dipecah
menjadibeberapa modul kecil dapatberupa prosedure, fungsi, atauclass sehingga
akan lebih mudahuntuk diselesaikan. Penggunaanmodul ini akan membuat
programutamanya menjadi lebih singkat,mudah untuk dilihat dan dianalisisuntuk
tujuan debuging serta untukpengembangan dari program.
3.
Memilih algoritma
Pilihlah
(atau buatlah) algoritmayang benar-benar sesuai danefisien untuk permasalahan
yangdiberikan.
4.
Memilih bahasa pemrogramandan menulis
source codeprogram
Bahasa
pemrograman yangdigunakan hendaknya Bahasayang memang sudah anda kuasaidengan
baik. Atau jika masihdalam tahap belajar, pilihlahbahasa pemrograman yangmudah
dipelajari dan digunakanserta memiliki tingkatkompatibilitas tinggi
denganperangkat keras dan platform(sistem operasi) lainnya.
5.
Menguji program
Setelah
selesai menulis sourcecode (program sudah jadi), ujilahprogram tersebut dengan segalamacam kemungkinan yang ada,termasuk
error-handling, sehingga program tersebut benar-benarhandal dan layak
untukdigunakan.
6.
Menulis dokumentasi
Dokumentasi
sangatlah pentingagar pada suatu saat jika kitaingin mengembangkan program,kita
tidak mengalami kesulitandalam membaca source codeyang sudah kita tulis. Cara
palingmudah dan sederhana dalammembuat suatu dokumentasiadalah dengan
menuliskankomentar-komentar kecil padasuatu baris (atau suatu bagiandari source
code) tentang apamaksud dari kode-kode tersebutdan apa kegunaannya,
kemudianvariabel apa saja yang digunakandan untuk apa,
serta parameterparameter yang ada pada suatuprosedur dan fungsi.
7.
Merawat program
Program
yang sudah jadisebaiknya juga dilakukanperawatan untuk mencegahmunculnya bug yang sebelumnyatidak terdeteksi.
Selain itu jugaberguna untuk menambahfasilitas-fasilitas baru yang dahulusewaktu dibuat
belum ada.Pada bab ini kita hanya focuspada langkah pertama sampaidengan
langkah keempat saja.Sedangkan untuk dapatmenerjemahkan notasi algoritmayang
telah dibuat ke dalam bentuksource code suatu Bahasapemrograman, seharusnya
kitamemahami terlebih
dahulu Bahasapemrograman yang akan kitagunakan, seperti aturan tatabahasanya,
intruksi-instruksi yangdigunakan, tipe data, dan masihbanyak lagi. Semua itu
akan kitapelajari satu persatu dibagian lainpada buku ini.
Oleh
karena kita baruakan mempelajari Bahasapemrograman yaitu C++ atauprogram
lainnya seperti java, makauntuk mempermudah pemahamantentang algoritma akan
diberikancontoh-contoh permasalahansederhana yang sering dijumpaidalam
pemrograman, bagaimanaalgoritmanya dalam bentuk tiganotasi algoritma yang telah
diberikan,dan kemudian
bagaimanamengimplementasikan ataumenerjemahkan algoritma tersebut kedalam bentuk
source code Bahasapemrograman C++ atau programlainnya seperti java.Untuk
membantu penerjemahanalgoritma kita juga harusmemperhatikan jenis-jenis
prosesyang biasanya kita temukan dalamalgoritma. Dalam algoritma adaempat jenis
proses yang dikenal,yaitu :
1.
Sequence
Process, merupakaninstruksi yang dikerjakan
secarasekuensial (berurutan).
2.
Selection
Process, adalahinstruksi yang dikerjakan jikamemenuhi suatu
kriteria ataukondisi (keadaan) tertentu.
3.
Iteration
Process, yaitu instruksiyang dikerjakan selamamemenuhi
suatu kriteria ataukondisi (keadaan) tertentu.
4.
Concurrent
Process, beberapainstruksi dikerjakan secarabersama.