Selasa, 16 September 2008

Struktur data

Definisi
Algoritma adalah urutan langkah-langkah logis penyeselaian masalah yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus dapat ditentukan bernilai benar atau salah.

Algoritma Dalam Kehidupan
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang diacu dalam terminologi algoritma. Namun algoritma juga digunakan dalam kehidupan sehari-hari, contohnya resep makanan. Di dalam resep makanan terdapat langkah-langkah yang merupakan algoritma. Selain itu masih banyak contoh algoritma yang lain.

Bahasa Pemrograman
Untuk melaksanakan suatu algoritma diperlukan suatu bahasa pemrograman, contoh bahasa pemrograman adalah : Pascal, C++, Basic, dll. Notasi algoritma dapat diterjemahkan kedalam bahasa pemrograman apapun, dengan kata lain notasi algoritma bersifat independen.

Flowchart

Suatu flowchart adalah suatu representasi secara diagram yang mengilustrasikan urutan dari operasi yang dilakukan untuk mendapatkan suatu hasil. Dengan kata lain, flowchart membantu kita untuk mengerti dan melihat bentuk algoritma dengan menampilkan algoritma dalam simbol-simbol gambar.

Dalam menggambar flowchart, digunakan simbol tertentu seperti gambar 1.1. Contoh berikut bisa digunakan untuk lebih mengerti perbedaan kegunaan simbol-simbol tersebut. Misal kita ingin mencari jumlah dari 2 buah bilangan, maka flowchart-nya adalah seperti gambar 1.2.

Contoh lain, misalkan kita ingin mengetahui apakah sebuah bilangan ganjil atau genap. Untuk itu kita harus membuat flowchart seperti ini gambar 1.3.

Pseudo Code
Pseudo Code adalah urutan baris algoritma seperti kode pemrograman dan tidak memiliki sintak yang baku. Pseudo Code lebih umum digunakan oleh programmer yang berpengalaman. Akan tetapi, flowchart lebih mudah dimengerti oleh programmer pemula, pseudo code sangat mudah diimplementasikan ke dalam kode program dibandingkan dengan flowchart. Kita bisa bebas menulis pseudo code selama itu mudah dimengerti bagi orang lain. Tetapi disarankan untuk menggunakan keyword yang umum digunakan seperti : if, then, else, while, do, repeat, for, dan lainnya. Dan ikuti gaya penulisan pemrograman seperti Pascal, C++, dll. Perhatikan kode dibawah ini :

  1. Mulai
  2. Masukkan sebuah angka
  3. Masukkan sebuah angka dan tampilkan
  4. Ambil angka yang sebelumnya dan tampilkan
  5. Selesai

Walaupun pseudo code diatas masih bisa dimengerti tetapi ada beberapa statemen yang ambigu. Dari baris kedua, kita tidak tahu kemana angka tersebut disimpan dan kita juga tidak tahu angka yang mana yang dimaksud untuk “angka yang sebelumnya”. Apakah angka yang pertama atau yang kedua. Pseudo Code diatas dapat dimodifikasi menjadi seperti berikut :

  1. Start
  2. Masukkan A
  3. Masukkan B, Tampilkan B
  4. Tampilkan A
  5. End

Pseudo Code diatas lebih baik dibandingkan sebelumnya. Kita bisa dengan jelas melihat dimana angka disimpan dan angka yang mana yang ditampilkan. Sekarang kita akan mengubah flowchart pada gambar 1.2

  1. Start
  2. Masukkan A dan B
  3. C = A + B
  4. Tampilkan C
  5. End

Cara belajar program otodidak (yang mudah?)

Apapun bahasa pemrogramannya, tidak pernah jauh dari cara-cara diatas. Untuk cara nomor 1, menurut saya adalah hal pokok. Mengingat bahwa bahasa pemrograman tidak dibuat oleh orang Indonesia.

Mau tidak mau harus membaca tulisan-tulisan bahasa Inggris meski sampai sekarang, saya belum bisa berbicara atau menulis dalam bahasa Inggris, membaca tetap harus dipaksakan.

Ketika menemukan dokumentasi yang berisi tulisan-tulisan yang cukup panjang, bagi yang malas seperti saya, tidak perlu dibaca semua. Kalau perlu, langsung mencoba contoh source code yang ada pada dokumen tersebut. Baru kemudian, pahami maksudnya dengan merujuk kembali ke dokumen tadi.

Menjadi seorang programmer tidak bisa dalam waktu instan. Harus banyak mencoba dan mencoba. Setiap menemukan permasalahan (matematis), coba pecahkan dengan program. Atau cara yang lebih efektif menguasai bahasa pemrograman: DENGAN KETERPAKSAAN.

Paksa diri Anda untuk mengerjakan sebuah proyek beneran. Setelah beberapa kali mencoba, beranikan diri Anda untuk mengerjakan proyek. JANGAN TAKUT!

Ketika sudah mentok!

Usahakan semuanya Anda kerjakan sendiri. Membaca tutorial, mencoba program, dan mengatasi error-error yang muncul. Karena pengalaman adalah guru yang terbaik.

Belajar dari kesalahan. Kan katanya, gak ada noda… gak belajar!

Namun, bila Anda seorang yang mudah menyerah, jangan berputus asa dulu. Anda bisa bertemu dengan banyak solusi.

1. Bertanya ke teman yang sudah bisa
2. Mencari di internet
3. Bertanya di milis atau forum

Cara nomor 5 adalah cara yang paling efektif. Bertanya kepada Guru atau Dosen sebenarnya lebih bagus, karena mereka lebih berpengalaman. Tapi, jika Guru atau Dosen tersebut sibuk, atau Anda malu bertanya, maka teman adalah alternatif utama. Banyak-banyaklah berteman dengan orang-orang yang “lurus…” :D

Berdasarkan pengalaman saya menjadi seorang pelajar maupun pengajar, teman (yang duduk disebelahnya, atau teman kos, atau teman sekelas) menjadi andalan.

Bagaimana jika teman “tidak mampu” mengatasi permasalahan Anda? siap-siap merogoh kocek! Beli buku, atau cari langsung di internet.
Jika Anda mencari di internet, maka teori nomor 1 akan diperlukan! Kecuali jika topik tersebut sudah banyak dikuasai oleh programmer-programmer Indonesia.

Alternatif terakhir, bertanya di milis atau forum. Menurut saya, cara seperti ini kurang efektif. Karena tidak semua orang langsung membaca email Anda. Kalaupun toH membaca, belum tentu memberikan jawaban (karena tidak tahu, atau MALAS). Jika memang Anda sudah bergabung dalam sebuah milis, sebaiknya cari terlebih dulu dalam arsip milis tersebut sebelum menanyakan permasalahan yang mungkin pernah ditanyakan oleh orang lain.



Tidak ada komentar: