Minggu, 02 Agustus 2009

Dasar-dasar pemrograman komputer

PERTEMUAN I


Dasar-dasar pemrograman komputer



Instruksi harus diberikan kepada komputer agar dapat memecahkan suatu masalah. Langkah-langkah yang dilakukan untuk memberikan instruksi kepada komputer untuk memecahkan masalah inilah yang dinamakan pemrograman komputer. Pemrograman komputer bukanlah hal yang sederhana. Kegiatan ini memerlukan ketelitian dan kemauan untuk bekerja dalam jangka waktu yang lama.



1. Pemrograman komputer


Dalam komunikasi sehari-hari seorang harus berbicara dalam bahasa yang sama dengan orang tersebut. Hal ini berlaku juga untuk berkomunikasi dengan komputer. Kita harus menggunakan bahasa yang dimengerti oleh komputer untuk memberikan suatu instruksi. Pada dasarnya komputer adalah sebuah mesin digital, artinya komputer hanya mengenal kondisi adanya arus (dilambangkan sebagai angka 1) atau tiadanya arus (dilambangkan sebagai angka 0). Dengan kata lain sandi 1 dan 0 harus digunakan untuk melakukan pemrograman. Sandi tersebut dikenal sebagai bahasa mesin. Kita dapat membayangkan bagaimana sulitnya menggunakan bahasa mesin sebagai bahasa pemrograman..



Karena bahasa mesin sangat sulit maka muncul ide untuk melambangkan untaian sandi 1 dan 0 dengan singkatan kata yang mudah dipahami manusia. Sebagai contoh dalam prosesor Intel terdapat perintah 0011 1010 0000 1011. Perintah dalam bahasa mesin ini artinya sama dengan perintah assembly CMP AL, 0D yang artinya bandingkan nilai register AL dengan 0D. CMP sebenarnya adalah singkatan dari compare. Dapat dilihat disini bahwa perintah tersebut lebih mudah dipahami dibandingkan dengan urut-urutan bilangan biner seperti tersebut diatas.



Pemrograman dengan basa assembly untuk banyak orang masih dirasakan terlalu sulit. Karena hal tersebut akhirnya dikembangkan suatu bahasa pemrograman yang lebih yang lebih mudah digunakan. Bahasa pemrograman ini menggunakan bahasa generasi ketiga atau disingkat 3GL, biasa juga disebut sebagai high-level language. Contoh dari bahasa ini adalah bahasa Basic, Pascal, C, C++, COBOL, dsb.



Bahasa generasi ketiga biasanya menggunakan kata-kata dalam bahasa Inggris karena bahasa inggris merupakan bahasa internasional. Sebagai contoh anda dapat menuliskan perintah berikut dalam bahasa Pascal . Sebagai contoh :


writeln(‘Hallo’); {Pascal}


printf(“Hallo”); // C


cout << “Hallo” << endl; // C++


ketiga pernyataan diatas bertujuan sama yaitu menuliskan teks “Hallo” ke keluaran standar biasanya ke layar komputer.



Ketiga perintah sederhana diatas sebenarnya terdiri dari puluhan atau mungkin ratusan pernyataan assembly. Perangkat lunak yang menterjemahkan program dalam bahasa yang mudah dipahami manusia ke dalam bahasa mesin dapat digolongkan menjadi dua jenis yaitu compiler atau interpreter.



Interpreter menerjemahkan program baris per baris, artinya jika suatu baris akan dieksekusi maka baris tersebut harus diterjemahkan terlebih dahulu kedalam bahasa mesin. Apabila baris berikutnya akan dieksekusi maka baris tersebut baru diterjemahkan ke dalam bahasa mesin. Contoh bahasa pemrograman yang menggunakan interpreter adalah Basic.



Compiler akan menterjemahkan menterjemahkan semua perintah kedalam bahasa mesin kemudian menjalankan hasil terjemahannya. Hasil terjemahan, untuk selanjutnya disebut sebagai binary file, ini disimpan dalam file atau memori. Contoh bahasa pemrograman yang menggunakan compiler adalah adalah Pascal, C, dan C++



Perkembangan bahasa pemrograman tidak hanya sampai pada generasi ketiga saja. Ada generasi lanjutan bahasa pemrograman yaitu 4GL (fourth generation language). Bahasa ini banyak digunakan untuk pengembangan aplikasi database. Salah satu contohnya adalah SQL (structured query language). Pada bahasa ini perintah yang diberikan lebih manusiawi misalnya : “Select Name, Address from Employee” untuk mengambil data Nama dan Alamat dari tabel Karyawan.



2. Langkah-langkah dalam pemrograman komputer


Dalam melakukan suatu kegiatan, siapapun memerlukan langkah-langkah yang harus dilalui. Demikian juga dengan pemrograman komputer. Urut-urutan langkah yang disajikan disini tidak bersifat mutlak artinya tidak harus melakukan dari langkah pertama, kedua dan selanjutnya. Ada beberapa langkah yang mungkin atau harus diulang sampai beberapa kali. Berikut ini adalah langkah-langkah yang harus dilakukan dalam pemrograman komputer :



  1. Mendefinisikan masalah. Langkah pertama ini sering kali tidak dilakukan oleh banyak pemrogram. Begitu mendapat perintah untuk membuat suatu program, mereka langsung menulis programnya tanpa mendefinisikan masalahnya terlebih dahulu.
  2. Menentukan solusi. Setelah masalah didefinisikan dengan jelas, masukan apa yang diberikan sudah jelas, keluaran apa yang diinginkan sudah jelas, langkah selanjutnya adalah mencari jalan bagaimana masalah tersebut diselesaikan. Apabila permasalahan terlalu kompleks, biasanya kita harus membaginya ke dalam beberapa modul kecil agar lebih mudah diselesaikan.

Sebagi contoh, program untuk menghitung invers matriks, dapat dibagai menjadi beberapa modul kecil. Modul pertama adalah meminta masukan dari pengguna berupa matriks bujursangkar. Modul kedua adalah mencari invers matrik yang dimasukkan pengguna. Modul terakhir adalah menampilkan hasilnya kepada pengguna. Modul-modul tersebut dikenal juga segai sub routine.



  1. Memilih algoritma. Langkah ini merupakan salah satu langkah penting dalam pemrograman komputer. Pemilihan algoritama yang salah akan menyebabkan program tidak dapat berjalan dengan baik.
  2. Menulis program. Pada langkah ini program harus benar-benar dituliskan pada komputer untuk memecahkan masalah yang diberikan. Untuk menulis program sangat disarankan untuk menggunakan bahasa generasi ketiga atau keempat. Penulisan program dengan menggunakan bilangan biner atau dengan assembly akan sangat sulit.
  3. Menguji program. Setelah program selesai ditulis, program tersebut harus diuji. Pengujian meliputi : keberhasilan kompilasi, keberhasilan output dan keberhasilan pemecahan kasus.
  4. Menulis dokumentasi. Hal ini biasanya dilakukan bersamaan dengan menulis program. Artinya pada setiap baris program , atau setiap beberapa baris program dilakukan penulisan komentar. Dokumentasi merupakan hal yang sangat penting.Dokumentasi diperlukan terutama pada saaat akan melakukan perubahan program atau membaca program yang sudah ada. Komentar-komentar oendek pada program biasanya sudah cukup. Namun akan lebih baik jika dituliskan pada file terpisah untuk kemudian dicetak diatas kertas bilamana perlu.
  5. Perawatan. Langkah ini dilakukan setelah program selesai dibuat dan sudah digunakan oleh pengguna. Hal yang paling sering terjadi disini adalah munculnya bug yang sebelumnya tidak terdeteksi. Atau mungkin juga pengguna ingin menambahkan fisilitas baru. Apabila hal seperti ini terjadi harus dilakukan revisi terhadap program.


3. Algoritma


Meskipun pada penjelasan diatas algoritma hanyalah bagian dari 7 langkah dalam pembuatan program, namun ia memiliki posisi yang teramat penting. Algoritma adalah urutan langkah berhingga untuk memecahkan masalah logika atau matematika. Dalam kehidupan sehari-hari sebenarnya kita juga menggunakan algoritma untuk melakukan sesuatu. Sebagai contoh untuk menulis surat diperlukan langkah-langkah sebagai berikut :



  1. Mempersiapkan kertas dan amplop
  2. Mempersiapkan alat tulis
  3. Mulai menulis.
  4. Memasukkan kertas ke dalam amplop.
  5. Pergi ke kantor pos untuk mengeposkan surat tersebut.

Langkah-langkah dari nomor 1 sampai dengan nomor 5 di atas itulah yang disebut dengan algoritma. Jadi sebenarnya kita menggunakan algoritma baik dengan sadar maupun tanpa kita sadar.


Dalam banyak kasus, algoritma yang dilakukan tidak selalu berutan seperti diatas. Kadang-kadang harus memilih dua atau beberapa pilihan. Sebagai contoh jika kita ingin makan, kita harus menentukan akan memasak sendiri atau dirumah makan. Jika kita memilih untuk makan dirumah makan kita akan menjalankan algoritma yang berbeda jika kita ingin memasak sendiri. Didalam pemrograman hal tersebut dikenal sebagai percabangan.


Dalam kasus lain lagi mungkin kita harus melakukan langkah-langkah tertentu beberapa kali Sebagai contoh, saat kita menulis surat, sebelum memasukkan kertas ke dalam amplop, mungkin kita harus memeriksa apakah surat tersebut sudah benar atau belum. Jika belum benar berarti kita harus menyisihkan kertas baru untuk memperbaiki surat tersebut. Demikian seterusnya sampai surat yang dibuat sesuai dengan yang diharapkan. Hal seperti ini disebut sebagai pengulangan.



4. Contoh algoritma untuk memecahkan masalah matematika


Misalkan kita ingin menghitung luas lingkaran dari masukan berupa jari-jari lingkaran Rumus luas lingkaran adalah :


Luas = R2


Maka algoritma untuk menghitung luas lingkaran adalah :



  1. Masukkan R
  2. Pi = 3.14
  3. Luas = Pi * R * R
  4. Tulis Luas

Perhatikanlah bahwa tanda = berarti merupakan pemberian nilai kepada variabel-variable yang berada disebelah kiri. Sebagai contoh untuk baris kedua, nilai 3.14 diberikan pada variable Pi. Berikutnya nilai Pi * R * R diberikan kepada variabel Luas.



Baris pertama dari algoritma diatas meminta masukkan dari pengguna berupa jari-jari lingkaran yang disimpan pada variabel R. pada baris kedua nilai disimpan pada variabel dengan nama Pi. Baris ketiga menghitung luas lingkaran dengan rumus R2 atau yang dituliskan Pi * R * R. Luas lingkaran ini disimpan pada variabel Luas. Baris terakhir menuliskan luas lingkaran tersebut.



5. Urut-urutan (Sequence)


Urut-urutan atau sequence adalah rangkaian tindakan yang dilakukan secara berurut. Contoh algoritma yang diperlihatkan diatas menunjukkan program yang berurut. Untuk memudahkan memahami algoritma, diagram alur akan sangat membantu. Contoh dari diagram tersebut terdapat pada gambar 1








image001






Gambar 1. Algoritma Perhitungan Luas Lingkaran



6. Pseudocode


Pseudocode adalah penulisan program dengan menggunakan bahasa yang kita pergunakan sehari hari. Bahasa yang digunakan bisa saja bahasa Indonesia, Bahasa Inggris, C-like, Pascal-like ataupun bentuk bentuk yang lainnya. Contoh pseudococde dari algoritma diatas adalah :


Program : Menghitung Luas Lingkaran


Mulai


Masukkan nilai jari-jari kedalam variabel R


Masukkan 3.14 kedalam variabel Pi


Masukkan hasil perkalian Pi dengan R kuadrat kedalam variabel Luas


Tampilkan nilai variabel luas


Selesai


Apapun bentuk tampilan algoritma anda yang terpenting adalah logika dari program yang anda buat.



7. Percabangan dan Pengulangan


Tidak setiap program memiliki algoritma yang hanya terdiri dari urut-urutan saja. Pada kenyataannya hal tersebut tidak mungkin terjadi pada pemrograman didunia sains atau bisnis. Sebuah program selalu terdiri dari urut-urutan(sequence), percabangan (condition), dan pengulangan (repetition) . Percabangan dan pengulangan selalu dilakukan terhadap pernyataan-pernyataan program yang berbentuk urut-urutan.


Percabangan adalah pemilihan kondisi untuk menentukan pernyataan mana yang akan dieksekusi selanjutnya. Sedangkan pengulangan adalah penentuan apakah suatu kondisi sudah terpenuhi untuk mengulangi atau menghentikan pengulangan eksekusi sebuah pernyataan program atau sebuah urut-urutan pernyataan program.


Kita akan mempelajari percabangan dan pengulangan setelah menguasai dengan baik penulisan algoritma secara urut-urutan (sequential).



8. Latihan :



  1. Buatlah sebuah algoritma untuk menghitung luas segitiga. Nyatakanlah algoritma tersebut dalam bentuk flowchart dan pseudocode. Luas Segitiga = Alas * Tinggi / 2
  2. image002 image003 image004Buatlah sebuah Buatlah sebuah algoritma untuk menghitung panjang sisi sebuah segitiga. Nyatakanlah algoritma tersebut dalam bentuk flowchart dan pseudocode. Panjang sisi = (Alas2 + Tinggi2)
  3. Buatlah sebuah algoritma untuk mengkonversi derajat celcius menjadi reamur. Nyatakanlah algoritma tersebut dalam bentuk flowchart dan pseudocode. Reamur = 0.8 * Celcius


Catatan


Berikut adalah notasi yang diterima secara luas


image005 Terminal : Merupakan Akhir atau Awal sebuah program


image006



Proses : Tempat dilakukannya perhitungan didalam sebuah program


image007



Input/Output : Input atau output sebuah program



Oleh : Abdusy Syarif ST, MT.



blog comments powered by Disqus

Poskan Komentar



 

Mata Kuliah Copyright © 2009 Premium Blogger Dashboard Designed by SAER