Pemrograman procedural Dalam perencanaan dan dan terstruktur

2.3.2. Pemrograman procedural Dalam perencanaan dan dan terstruktur

perancangan dari atas ke bawah, Bahasa pemrograman kategori dan penyelesaian masalah prosedural adalah bahasa dimulai dari bagian yang utama pemrograman yang mendukung kemudian dibagi menjadi bagian pembuatan program sebagai yang lebih kecil. Rancangan cara ini

kumpulan prosedur. Prosedur- memudahkan penulisan, pengujian, prosedur ini dapat saling memanggil koreksi dan dokumentasi program. dan dipanggil dari manapun dalam Tahapan rancangan atas ke bawah program dan dapat menggunakan dalam pemrograman:

parameter yang berbeda-beda untuk  Tentukan keluaran (output) yang setiap pemanggilan. Prosedur adalah diminta, masukan (input) yang bagian dari program untuk diperlukan dan proses-proses melakukan operasi-operasi yang utama yang diperlukan untuk sudah ditentukan dengan transformasi data.

menggunakan parameter tertentu.  Membagi proses utama ke dalam

Bahasa pemrograman terstruktur modul-modul fungsional.

adalah pemrograman yang  Buat algoritma msing-masing mendukung abstraksi data, modul, dari modul utama ke sub-

pengkodean terstruktur dan kontrol sub modul.

program terstruktur. Kontrol program Setiap modul dalam proses terstruktur adalah sebagai berikut: rancangan atas ke bawah biasanya

1. Runtun - urut (sequence)

dibatasi dalam isi maupun batasan-

2. Pilihan (selection)

batasan berikut:

3. Pengulangan (repetition - loop)  Setiap modul hanya mempunyai

4. Batasan Masalah Merencanakan satu masukan dan keluaran

sistim dan spesifikasi program:  Setiap modul hanya mewakili satu

Siapa yang akan menggunakan fungsi program.

program dan untuk apa? dengan Rancangan (design) terstruktur:

cara:

 Membagi program menjadi  Menentukan tujuan dan hasil subprogram

yang akan dicapai

2008 | Direktorat Pembinaan SMK

Bahasa Pemrograman Bahasa dan Algoritma Pemrograman

 Menentukan hal-hal yang bagaimana algoritma penyelesaian

diperlukan oleh sistim masalahnya. Sebelum mengetahui  Pengumpulan data

lebih lanjut apa yang dimaksud

5. Pengembangan Model Pembuatan dengan algoritma pemrograman, kita

model dari sistim yang akan kita bahas dahulu apa yang dimaksud bangun, model adalah suatu dengan pemrograman komputer atau gambaran sederhana dari sistim program komputer. yang kita buat. Dengan

Definisi program komputer

pembuatan model akan terlihat adalah sederetan perintah-perintah dengan jelas hubungan antara (instruksi) yang harus dikerjakan oleh objek-objek dalam sistim yang komputer untuk menyelesaikan akan kita bangun. Untuk masalah. Deretan perintah-perintah penyelesaian aritmatik, biasanya tersebut tidak bisa kita tulis secara model dibuat dalam bentuk rumus

sembarangan atau semau kita tetapi

matematik. Contoh: untuk harus teratur agar komputer dapat membuat program luas_lingkaran memahami dan memprosesnya

kita membuat model matematis dengan baik sehingga permasalahan

c = axb yang ada dapat diselesaikan dengan

6. Rancangan algoritma Pembuatan

baik pula.

urutan instruksi yang akan ditulis Untuk itulah diperlukan algoritma

pada program ( dijelaskan lebih karena definisi dari algoritma itu lanjut)

sendiri menurut Microsoft Press

7. Pemrograman

Implementasi

Computer and Internet Dictionary

algoritma ke dalam program (1998) adalah urutan langkah logis (algoritma sendiri dalam komputer

tertentu untuk memecahkan suatu adalah merupakan program).

masalah. Yang ditekankan adalah

8. Uji dan Validasi Pengujian urutan langkah logis, yang berarti terhadap program : seperti algoritma harus mengikuti suatu kesalahan penulisan (syntax error)

urutan tertentu, tidak boleh , kesalahan saat eksekusi (runtime

melompat-lompat dan disusun secara error) kesalahan logika program sistematis. Sedangkan yang (program berjalan tapi dimaksud dengan langkah-langkah menghasilkan output yang salah- logis adalah kita harus dapat fatal error).

mengetahui dengan pasti setiap Dokumentasi Pembuatan catatan langkah yang kita buat. pada program terutama pada modul-

Menurut Sjukani (2005), modul yang rumit.

algoritma adalah alur pemikiran dalam menyelesaikan suatu

2.4. Algoritma

pekerjaan yang dituangkan secara

Pemrograman komputer dan tertulis. Yang ditekankan pertama algoritma pemrograman adalah dua adalah alur pikiran, sehingga hal yang tidak dapat dipisahkan algoritma seseorang dapat berbeda karena pembuatan program dari algoritma orang lain. Sedangkan komputer akan lebih sulit dan lama penekanan kedua adalah tertulis, tanpa mengetahui dengan pasti yang artinya dapat berupa kalimat,

gambar, atau tabel tertentu. Jadi

Direktorat Pembinaan SMK | 2008

Bahasa dan Algoritma Pemrograman Bahasa Pemrorgraman

dapat disimpulkan bahwa algoritma Demikian juga dengan pemrograman lebih merupakan alur pemikiran untuk

komputer, kita juga tidak harus menyelesaikan suatu pekerjaan atau

mengikuti algoritma yang sudah ada, suatu masalah daripada pembuatan tetapi kita dapat menambah ataupun program komputer. Algoritma inilah mengurangi bahkan membuat yang kemudian dijadikan landasan algoritma yang baru asalkan (pedoman) untuk membuat program permasalahan yang ada dapat komputer.

terpecahkan dengan baik. Meskipun algoritma tidak dapat dipisahkan dengan pemrograman komputer tetapi jika anda

2.5. Ciri Algoritma

beranggapan bahwa algoritma identik Oleh karena algoritma digunakan dengan pemrograman komputer, untuk memecahkan suatu

anda salah besar. Hal ini dikarenakan permasalahan maka algoritma dalam kehidupan sehari-haripun tersebut harus menghasilkan suatu seringkali kita berhadapan dengan jawaban atas permasalahan tersebut.

masalah-masalah yang kalau kita Dengan kata lain algoritma harus cermati mengikuti kaidah-kaidah memiliki paling tidak satu keluaran. penyelesaian secara algoritma. Sedangkan masukan dari algoritma Misalkan saja cara-cara memasak dapat nol (tidak ada) atau banyak mie instan, membuat kopi atau teh, masukan (data). Yang dimakdud memasak makanan yang dinyatakan

dengan nol masukan adalah jika dalam bentuk resep, dan masih algoritma itu hanya untuk banyak lagi yang semuanya itu dapat

menampilkan suatu informasi saja. kita sebut sebagai algoritma. Pada Misalnya output “Hello World” yang

mie instan misalnya, biasanya pada sering kita temukan pada tutorial- bungkusnya terdapat urutan langkah-

tutorial saat kita baru belajar langkah bagaimana cara memasak membuat program dari suatu bahasa

atau menyajikannya. Bila langkah- pemrograman tertentu. Kedua hal langkah tersebut tidak logis, maka diatas, memiliki paling sedikit satu

dapat dipastikan bahwa kita akan keluaran dan dapat memiliki nol atau memperoleh hasil yang tidak sesuai banyak masukan, merupakan dua dengan yang diharapkan. Kita harus

dari beberapa ciri algoritma. membaca satu demi satu langkah-

Tugas algoritma dikatakan langkah pembuatannya kemudian selesai kalau algoritma tersebut

mengikutinya agar memperoleh hasil sudah menghasilkan satu atau lebih yang baik.

jawaban atas permasalahan yang Yang harus diingat disini adalah

ada. Dengan demikian setelah kita tidak harus mengikuti langkah-

mengerjakan langkah-langkah langkah yang sudah diberikan, tetapi

penyelesaian masalah, maka kita dapat memodifikasinya atau algoritma tersebut harus berhenti

bahkan membuat resep atau cara tidak melakukan proses apapun. baru yang lebih baik tetapi Berhenti di sini artinya adalah jika menghasilkan hal yang sama diterjemahkan ke dalam bentuk (mempunyai tujuan yang sama), yaitu

program dan program dijalankan, dapat menikmati hasil masakan.

2008 | Direktorat Pembinaan SMK

Bahasa Pemrograman Bahasa dan Algoritma Pemrograman

maka setelah menghasilkan suatu ember B ke ember A? Apakah output, program dapat langsung permasalahan dapat diselesaikan berhenti atau menunggu instruksi dengan cara (algoritma) tersebut? lebih lanjut dari pengguna program Jawabannya adalah tidak, karena seperti mengulang perhitungan lagi, algoritma tersebut tidak logis dan keluar program (menghentikan hasilnyapun tidak sesuai dengan program), dan lain sebagainya. yang diinginkan karena algoritma Dengan demikian ciri ketiga dari tersebut akan menghasilkan ember A algoritma adalah setelah selesai akan berisi campuran air dan minyak mengerjakan langkah-langkah tanah sedangkan ember B akan penyelesaian masalah, algoritma kosong. harus berhenti.

Bagaimanakah cara (algoritma)

Ciri keempat dari algoritma yang benar dari permasalahan adalah setiap langkah yang dibuat tersebut? Algoritma yang benar harus dibuat sesederhana mungkin adalah pindahkan dahulu isi ember A tetapi efektif agar dapat dipahami ke ember lain (misal ember C), oleh pemroses (manusia maupun kemudian setelah ember A kosong komputer) sehingga dapat pindah isi ember B ke ember A. diselesaikan dalam waktu yang Langkah terakhir adalah mengisi singkat serta masuk akal. Sedangkan

ember B dengan minyak tanah yang ciri yang terakhir adalah setiap ada di ember C. Inilah algoritma yang langkah dalam algoritma harus paling logis dan menghasilkan didefinisikan dengan tepat dan jelas jawaban yang benar atas sehingga tidak berarti-dua permasalahan tersebut. (ambiguitas) sehingga menimbulkan

Seperti yang telah dikemukakan kesalahan dalam penafsiran oleh sebelumnya, setiap orang pemroses

mempunyai cara pemecahan sendiri- sendiri sehingga setiap orang dimungkinkan mempunyai algoritma

2.6. Penerapan Algoritma

yang berbeda-beda untuk

Berikut adalah contoh memecahkan suatu permasalahan pemecahan masalah (algoritma) yang sama. Contohnya adalah yang diambil dari permasalahan yang

permasalahan di atas. Langkah mungkin sering kita hadapi dalam pertama bisa saja yang dipindah kehidupan kita sehari-hari. Diketahui

bukan isi ember A ke ember C dulu, dua buah ember A dan B dimana tetapi isi ember B yang dipindahkan ember A berisi air dan ember B berisi

ke dalam ember C terlebih dahulu. minyak tanah. Jika diinginkan isi Setelah itu baru memindahkan isi

kedua ember itu saling ditukar ember A ke dalam ember B dan sehingga ember A berisi minyak terakhir memindah isi ember C ke tanah dan ember B berisi air, ember A. Algoritma ini sedikit bagaimanakah caranya? Apakah berbeda tetapi tetap menghasilkan cukup dengan cara (membuat jawaban yang sama atas persoalan algoritma), tuangkan isi ember A ke

yang ada.

ember B dan kemudian tuangkan isi

Direktorat Pembinaan SMK | 2008

Bahasa dan Algoritma Pemrograman Bahasa Pemrorgraman

tiga buah bilangan yang dimasukkan. Algoritma mempunyai aturan Bagaimanakah algoritmanya? penulisan sendiri yang disebut

2.7. Notasi Algoritma

dengan notasi algoritma. Notasi

algoritma ini tidak tergantung dari

2.8. Deskriptif Algoritma

spesifikasi bahasa pemrograman Algoritma dengan uraian kalimat tertentu dan komputer yang deskriptif adalah notasi algoritma mengeksekusinya. Hal ini yang paling sederhana karena dikarenakan notasi algoritma algoritma ini menggunakan bahasa bukanlah notasi bahasa sehari-hari. Untuk permasalahan pemrograman. Notasi algoritma yang sederhana penggunaan notasi merupakan bahasa universal yang ini sangatlah mudah, akan tetapi dapat diterima oleh semua bahasa untuk permasalahan yang lebih pemrograman yang ada. Oleh sebab

komplek dan rumit, penggunaan itu algoritma yang baik harus dapat notasi ini akan lebih sulit dan sering diterjemahkan ke dalam bentuk kali terjadi ambigu dalam langlah- source code dari semua bahasa langkah penyelesaian masalah. Oleh pemrograman yang ada.

karena itulah untuk kasus-kasus yang

Untuk membuat algoritma dari lebih komplek, penggunaan notasi ini suatu permasalahan, biasanya jarang sekali bahkan tidak digunakan. digunakan salah satu dari tiga buah

Permasalahan di atas, yaitu notasi algoritma yang dikenal, yaitu mencari bilangan terbesar dari tiga uraian kalimat deskriptif, flow chart, buah bilangan yang dimasukkan, atau pseudo code. Sebagai contoh tergolong permasalahan yang permasalahan, jika diinginkan sebuah

sederhana, jadi algoritmanya masih program komputer yang dapat mudah dan dapat dijelaskan dengan mengetahui bilangan terbesar dari uraian kalimat deskriptif sebagai

berikut:

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‐nya menjadi sama dengan bilangan kedua.

5. Ambil bilangan ketiga dan bandingan dengan maksimum.