Buku “Dasar Algoritma dan Pemrograman Menggunakan C & Java”
menjabarkan dasar-dasar algoritma dan penerapannya menggunakan bahasa C
dan Java. Bahasa C dipilih karena inilah bahasa pemrograman yang menjadi
dasar bahasa pemrograman modern, sementara pilihan Bahasa Java
dikarenankan kemampuan bahasa pemrograman ini yang dapat dijalankan di
berbagai platform komputer.
Buku ini akan mempertajam kemampuan analisa mahasiswa melalui
berbagai soal-soal pemrograman yang akan mengantar mahasiswa dari fase belajar
cara lama [menghafal rumus tanpa melakukan analisa] ke cara belajar
kuliah (analisa pemecahan masalah). Latihan soal disajikan dalam 2
bentuk: latihan langsung dan latihan analisa [soal cerita].
Mahasiswa akan mendapatkan informasi lengkap tentang Dasar-Dasar
Algoritma menggunakan Pemograman Java dan C karena kedua penulis
menyajikan tema-tema penting seperti:
> ALGORITMA DALAM PROGRAM KOMPUTER
> TIPE DATA DAN VARIABEL
> PERINTAH FOR
> DEFINISI PROSEDUR
> DEFINISI ARRAY
> DASAR-DASAR STRING
> KUMPULAN SOAL-SOAL & SOLUSI
> GLOSARIUM
KUASAI SEKARANG JUGA DASAR-DASAR ALGORITMA MENGGUNAKAN BAHASA PEMROGRAMAN JAVA DAN C DENGAN CEPAT, MUDAH, LENGKAP DENGAN SOAL DAN PEMBAHASAN!
Profil Penulis:
Windra Swastika, S. Kom, M. T. Dosen tetap Teknik Informatika Universitas Ma Chung. Sedang studi doktoral di Chiba University, Jepang.
Paulus Lucky, S. Kom. Dosen tetap Teknik Informatika Universitas Ma
Chung. Kontributor tetap untuk tabloid PC Mild. Pengampu mata kuliah:
Bahasa Pemrograman, Pemrograman Berorientasi Objek dan Sistem Basis
Data.
Kutipan Konten
Bab 1: Pengantar Algoritma
1.1. ALGORITMA DALAM PROGRAM KOMPUTER
Tanpa disadari, program komputer telah menjadi bagian dari kehidupan
sehari-hari. Kegiatan seperti pengiriman email, pencetakkan struk saat
berbelanja di supermarket, mengecek pulsa HP, atau bertanya nomer
telepon tertentu ke penerangan merupakan beberapa contoh bagaimana
program komputer terlibat dalam kehidupan sehari-hari.
Program-program komputer yang ada, tidak begitu saja muncul. Sebelum
menjadi program komputer utuh yang dapat difungsikan, diperlukan proses
perancangan yang sistematis yang kemudian diimplementasikan ke dalam
sebuah bahasa pemrograman tertentu (seperti C, C++, PHP atau Java).
Dalam proses perancangan program komputer, pembuat program akan
menentukan apa sajakah masukan yang diterima oleh program, bagaimana
nantinya masukan tersebut diolah untuk menghasilkan keluaran yang
diinginkan, dan bagaimana pengguna program dapat berinteraksi dengan
program. Proses ini akan sangat menentukan bagaimana program tersebut
nantinya.
Tahapan-tahapan yang sistematis tentang bagaimana jalannya suatu
program dari awal sampai akhir disebut dengan algoritma.Untuk setiap
aksi yang dilakukan oleh program komputer dapat dipastikan memiliki
algoritma. Sebagai contoh, ketika seorang operator penerangan telepon
menjalankan program komputer untuk mencari data nomer telepon
berdasarkan suatu alamat, maka urut-urutan logis (algoritma) yang
dilakukan oleh program komputer adalah:
1. Meminta masukan alamat lengkap.
2. Dari semua data alamat yang telah tersimpan di basis data komputer,
program akan membandingkan apakah alamat tersebut sama dengan yang
diinginkan.
3. Jika sama, ambil nomer telepon dari alamat tersebut dan tampilkan ke layar.
4. Namun, jika dari semua data alamat yang ada ternyata tidak ada
satupun yang memiliki kesamaan dengan alamat yang dicari, maka tampilkan
bahwa alamat tersebut tidak memiliki nomer telepon.
Urut-urutan ini berlaku secara ketat. Jika urutan diubah, maka
keluaran yang dihasilkan juga tidak akan sesuai dengan yang diinginkan.
Selain itu, ketika merancang suatu program, urut-urutan atau
algoritma yang digunakan haruslah berupa instruksi yang jelas (tidak
ambigu). Memberikan perintah “cari”, “tampilkan”, atau “minta masukkan”
merupakan perintah yang ambigu karena tidak memiliki skopa (ruang
lingkup) yang jelas. Apa yang hendak dicari? Apa yang hendak
ditampilkan? Masukkan seperti apa yang diinginkan? Apakah masukan berupa
angka? Berupa teks? Berupa tanggal? Berupa jam? Instruksi “cari” dapat
diperjelas (agar tidak menjadi ambigu) menjadi: “cari huruf A pada teks
yang dimasukkan oleh pengguna” atau “tampilkan hasil pencarian yang
diperoleh pada langkah sebelumnya”. Jika instruksi pada algoritma tidak
jelas, maka akan muncul kesulitan saat diterapkan ke dalam bahasa
pemrograman.
Hal lain yang perlu diperhatikan ketika menyusun suatu algoritma
adalah bahwa langkah-langkah (atau instruksi) yang ada haruslah
terbatas. Program komputer tidak dapat menjalankan suatu instruksi yang
tidak memiliki batas tertentu. Misalnya instruksi, “Cari kata ABC pada
halaman 1 sampai ketemu” merupakan instruksi yang tidak jelas
batasannya. Apa definisi “ketemu”? Lain halnya dengan instruksi “Cari
“Cari kata ABC pada halaman 1 sampai X=1”. Artinya pencarian akan
dihentikan ketika nilai X=1 (terbatas). Selama nilai X belum 1, maka
pencarian kata ABC akan terus dilanjutkan pada halaman 1.
Dalam ilmu komputer, masih belum ada definisi yang standard tentang
apa itu algoritma. Munir mendefinisikan algoritma sebagai “urutan
langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis.” Dari definsi di atas, algoritma dapat diterapkan secara
luas dalam setiap pemecahan masalah yang terjadi. Sebagai contoh
algoritma untuk memasak mie instan adalah sebagai berikut:
1. Rebus air hingga mendidih.
2. Masukkan mie instan ke dalam air mendidih tersebut.
3. Tunggu beberapa hingga mie terlihat matang.
4. Jika mie sudah dirasa matang, angkat dan tiriskan.
5. Campurkan bumbu-bumbu, dan aduk hingga rata.
Secara umum, algoritma di atas dapat dimengerti oleh manusia.Namun
ketika algoritma ini diterapkan dalam komputer, akan muncul ambiguitas
dan ketidakjelasan seperti “apa definisi mendidih?” (pada langkah 1),
“apa definisi ‘terlihat matang’?” (pada langkah 3), “apa definisi
‘rata’?” (pada langkah 5). Contoh algoritma yang dapat dengan mudah
diterapkan dalam komputer adalah algoritma untuk menghitung dan
menampilkan sisi miring segitiga siku-siku.
1. Masukkan dua buah bilangan bulat, yaitu a dan b.
2. Hitung sisi miring dengan menggunakan rumus akar(a2+b2) dan simpan hasil perhitungan dalam sebuah penampung angka bernama c.
3. Tampilkan nilai c (hasil perhitungan dari langkah 2).
Penampung angka yang digunakan untuk menyimpan isi dari perhitungan
disebut dengan variabel. Pada langkah pertama juga muncul dua buah
variabel, yaitu a dan b. Pada langkah ke-3, kata ‘akar’ merupakan suatu
fungsi atau operasi yang dikenal dalam berbagai bahasa pemrograman.
Kejelasan dalam suatu algoritma akan memudahkan saat diterapkan ke dalam
Bahasa Pemrograman.
Catatan: Kemampuan menyusun algoritma perlu dipunyai oleh Mahasiswa
Teknik Informatika karena akan melatih keteraturan dalam menyusun
penyelesaian masalah-masalah komputasi.
Algoritma menghitung sisi miring di atas disebut sebagai algoritma
yang sekuensial. Saat diterapkan pada bahasa pemrograman komputer
tertentu, komputer akan mengeksekusi setiap perintahnya dari perintah
yang paling atas hingga perintah terakhir tepat satu kali. Namun,
kenyataannya, seringkali ditemui program komputer yang tidak sekuensial
atau berdasarkan kondisi tertentu. Misalnya, dalam program komputer
untuk menentukan kelulusan berdasarkan masukan dari suatu nilai, program
komputer untuk menentukan grade nilai (A, B, C, D, E) berdasarkan
jangkauan nilai tertentu (100-90, 89-65, 64-55, 54-40, 39-0). Algoritma
yang melibatkan kondisi disebut sebagai algoritma kondisional. Contoh
penulisan algoritma kondisional untuk menentukan kelulusan adalah
sebagai berikut:
1. Masukkan nilai siswa dan simpan ke dalam variabel N.
2. Jika nilai N >= 55 maka tampilkan “Lulus”, namun jika N<55, tampilkan “Tidak Lulus”.
Pada algoritma di atas, langkah 2 memiliki dua perintah untuk
menampilkan “Lulus” atau “Tidak Lulus” berdasarkan kondisi nilai N.
Kedua perintah ini tidak akan dijalankan bersamaan. Bandingkan dengan
algoritma sekuensial di mana setiap perintah pasti akan dijalankan
sekali. Contoh lain algoritma kondisional untuk menentukan grade adalah
sebagai berikut:
http://prestasipustakaraya.com/dasar-algoritma-dan-pemrograman-menggunakan-c-dan-java.html/
Tidak ada komentar:
Posting Komentar