Sutami, M.Kom
Semester II (ganjil)
Pengertian Logika dan Algoritma
Pengertian algoritma sangat lekat dengan
kata logika, yaitu kemampuan seorang
manusia untuk berfikir dengan akal tentang
suatu permasalahan menghasilkan sebuah
kebenaran, dibuktikan dan dapat diterima
akal, logika seringkali dihubungkan dengan
kecerdasan, seseorang yang mampu
berlogika dengan baik sering orang
menyebutnya sebagai pribadi yang cerdas.
Dalam menyelesaikan suatu masalahpun
logika mutlak diperlukan.
Pengertian Algoritma
Sebuah algoritma merupakan deskripsi
pelaksanaan suatu proses, dimana algoritma
disusun oleh sederetan langkah instruksi
yang logis.
Kata logis merupakan kata kunci dalam
sintesis.
Titik berat: designer program.
Belajar Bahasa Pemrograman
Belajar memakai suatu bahasa pemrograman,
aturan sintaks, tatacara untuk memanfaatkan
pernyataan yang spesifik untuk setiap
bahasa.
Titik berat: coder.
Produk yang Dihasilkan Pemrogram
program.
Mempertukarkan Isi Bejana
Tinjau persoalan mempertukarkan isi dua bejana, A dan B.
Bejana A berisi larutan yang berwarna merah, sedangkan
bejana B berisi air berwarna biru.
Kita ingin mempertukarkan isi kedua bejana itu
sedemikian sehingga
bejana A berisi larutan berwarna biru dan bejana B berisi
larutan berwarna merah.
Untuk mempertukarkan isi dua bejana, kita memerlukan
sebuah bejana
tambahan yang diperlukan sebagai tempat penampungan
sementara.
Sebut bejana tambahan tersebut bejana C. Dengan
menggunakan bejana bantu C ini.
Tahapan Pelaksanaan Program Oleh Komputer
Notasi Algoritma
Notasi algoritma dapat diterjemahkan ke
dalam berbagai bahasa pemrograman. Notasi
algoritma bukan notasi bahasa
pemrograman, sehingga siapapun dapat
membuat notasi algoritma yang berbeda. Hal
yang penting mengenai notasi tersebut
adalah mudah dibaca dan dimengerti.
Meskipun demikian untuk menghindari
kekeliriuan, ketaatan terhadap notasi perlu
diperhatikan.
Notasi I: menyatakan langkah-langkah algoritma dengan untaian
kalimat deskriptif
Dengan notasi bergaya kalimat ini, deskripsi
setiap langkah dijelaskan dengan bahasa yang
gambling. Proses diawali dengan kata kerja
seperti ‘baca’,‘hitung’, ‘bagi’, ‘ganti’, dan
sebagainya, sedangkan pernyataan kondisional
dinyatakan dengan ‘jika…maka…’. Notasi ini
bagus untuk algoritma yang pendek, namun
untuk masalah yang algoritmanya besar, notasi
ini jelas tidakefisien. Selain itu, pengkonversian
notasi algoritma ke notasi bahasa
pemrograman cenderung relative sukar.
Notasi II menggunakan diagram alur
(Flow chart)
Diagram alir popular pada awal-awal era
pemrograman dengan computer (terutama
dengan bahasa Basic, Fortran, dan Cobol).
Diagram alir lebih menggambarkan aliran
instruksi di dalam program secara visual
disbanding memperlihatkan struktur program.
Notasi diagram alur lebih cocok digunakan untuk
masalah yang kecil, untuk masalah yang besar
tidak cocok digunakan karena membutuhkan
berlembar halaman kertas. Selain itu,
pengkonversian notasi algoritma ke bahasa
pemrograman cenderung relatif sukar.
Notasi III: menggunakan Pseudo-
code
Pseudo-code adalah notasi yang menyerupai notasi bahasa
pemrograman tingkat tinggi, khususnya Pascal dan C.
Bahasa pemrograman umumnya mempunyai notasi yang
hampir mirip untuk beberapa instruksi seperti notasi
ifthen-else, while-do, repeat-until, read, write , dan
sebagainya. Namun tidak seperti bahasa pemrograman
yang direpotkan dengan tanda titik koma, indeks, format
keluaran, kata-kata khusus, dan sebagainya, sembarang
versi Pseudocode dapat diterima asalakan perintahnya
tidak membingungkan pembaca. Keuntungan
menggunakan notasi Pseudo-code adalah kemudahan
mentranslasi ke notasi bahasa pemrograman, karena
terdapat korespodensi antara setiap Pseudo-code dengan
notasi bahasa pemrograman.
Kata-kata yang digarisbawahi menyatakan kata-kata kunci untuk setiap notasi
pseudo-code yang digunakan.
Proses, Instruksi, dan Aksi
Pada dasrnya, sebuah algoritma merupakan
deskripsi pelaksanaan suatu proses. Tiap
langkah instruksi tersebut mengerjakan suatu
tindakan (aksi). Bila suatu aksi dilaksanakan,
maka sejumlah operasi yang bersesuaian
dengan aksi itu dikerjakan oleh pemroses. Efek
dari pengerjaan suatu aksi dapat diamati
dengan membandingkan keadaan pada saat
aksi belum dimulai, dan keadaan pada saat
aksi selesai dikerjakan.
Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian
masalah. Langkah-langkah tersebut dapat
berupa runtunan aksi, pemilihan aksi, dan
pengulangan aksi. Ketiga jenis langkah
tersebut membentuk konstruksi suatu
algoritma. Jadi, sebuah algoritma dapat
dibangun dari tiga buah struktur dasar, yaitu:
Runtunan (sequence).
Pemilihan (selection).
Pengulangan (repetition).
1.Runtunan
Sebuah runtunan terdiri dari satu atau lebih
instruksi. Tiap instruksi dikerjakan secara
berurutan sesuai dengan urutan penulisannya,
yakni sebuah instruksi dilaksanakan setelah
instruksi sebelumnya selesai dilaksanakan.
Urutan instruksi menentukan keadaan akhir
algoritma. Bila urutannya diubah, maka hasil
akhir mungkin juga berubah.
2.Pemilihan
Adakalanya sebuah instruksi dikerjakan jika
kondisi tertentu dipenuhi. Kondisi adalah
persyaratan yang dapat bernilai benar atau
salah. Dalam pemilihan dikenal beberapa
struktur pemilihan, yaitu:
If - then
Pemilihan(Lanjutan)
If – then
Aksi hanya akan dilaksanakan apabila kondisi
bernilai benar. Sebaliknya, apabila kondisi bernilai
salah, maka aksi tidak akan dilaksanakan. Struktur
Umum:
if kondisi then
Aksi
Struktur pemilihan if-then hanya memberikan
satu pilihan aksi bila kondisi (persyaratan)
dipenuhi (bernilai benar), dan tidak memberikan
pilihan aksi lain bila kondisi bernilai salah.
Pemilihan(lanjutan)
If-then-else
Struktur pemilihan ini memberikan dua buah
aksi yang akan dikerjakan tergantung pada
nilai kondisinya. Struktur umumnya:
if kondisi then
aksi 1
else
aksi 2
Pemilihan(lanjutan)
Pemilihan(Lanjutan)
If-then-else if
Apabila pilihan aksi yang dilakukan lebih dari
dua buah, maka struktur pilihannya menjadi
lebih rumit, biasanya untuk pemilihan seperti
ini disebut pemilihan bersarang.
Kelebihan struktur pemilihan terletak pada kemampuannya yang
memungkinakan pemroses mengikuti jalur aksi yang berbeda
berdasarkan kondisi yang ada.
3.Pengulangan
Pengulangan digunakan untuk menjalankan
satu atau beberapa pernyataan sebanyak
beberapa kali. Dengan kata lain, pengulangan
memungkinkan pengerjaan beberapa kali
perintah tetapi penulisan perintah tersebut
hanya satu kali.
Struktur Pengulangan
Struktur Pengulangan
Struktur Pengulangan
Catatan:
Pada pernyataan repeat-until dan while-do, pada
dasarnya hampir sama yaitu digunakan jika
jumlah pengulangan belum dapat ditentukan.
Tetapi terdapat perbedaan yaitu pada
pengecekan kondisi. Jika pada pernyataan while,
kondisi dicek pada awal blok pengulangan, pada
pernyataan repeat-until, kondisi dicek pada
akhir blok pengulangan. Perbedaan yang lain,
bila pernyataan while mengulang pernyataan
selama kondisi masih terpenuhi, pernyataan
repeat-until mengulang pernyataan selama
kondisi belum terpenuhi.
Contoh Kasus
Misalkan seorang pemuda tiba di tepi sungai.Pemuda
tersebut membawa seekor kambing,seekor serigala dan
sayur. Mereka bermaksud untuk menyeberangi sungai.
Pemuda itu menemukan sebuah perahu kecil yang hanya
bisa memuat satu bawaan saja setiap kali menyeberang.
Kondisinya dipersulit dengan kenyataan bahwa,serigala
tidak dapat ditinggal berdua dengan si kambing karena
serigala akan memangsa kambing, begitu pula dengan
kambing tidak bisa ditinggal dengan keranjang sayur
karena kambing akan memakan semua sayur tersebut.
Bagaimanakah algoritma si pemuda menyeberangkan
seluruh bawaan sehingga mereka dapat tiba ke seberang
sungai tanpa kekurangan apapun. Tentu hanya pemuda
yang bisa mendayung perahu?
Algoritma Penyelesaian
Misalkan kita namakan sisi sungai dengan A dan
sisi seberang adalah sisi B
Algoritmanya adalah :
1.Pemuda menyeberangkan kambing dari sisi A ke sisi B
2.Pemuda menyeberang sendiri dari sisi B ke sisi A
3.Pemuda menyeberangkan serigala dari sisi A ke sisi B
4.Pemuda menyeberangkan kambing dari sisi B ke sisi A
5.Pemuda menyeberangkan sayur dari sisi A ke sisi B
6.Pemuda menyeberang sendiri dari sisi B ke sisi A
7.Pemuda menyeberangkan kambing dari sisi A ke sisi B
8.Selesai.
Algoritma Isi Pulsa
1.Tekan *888# lalu tekan tombol telepon.
2.Pilih pilihan untuk mengisi pulsa.
3.Masukkan 14 digit nomor pulsa anda.
4.Akhiri dengan tanda #.
5.Selesai.
Algoritma Makan
Algoritma Tidur
Algoritma Kirim Surat POS
Algoritma Memasak Air
di Dispenser
Algoritma membuat mie goreng
instant :
Siapkan mie goreng instant Letakkan panci diatas kompor
Apakah mie instant ada? Nyalakan kompor
Jika tika tidak, beli di warung Tunggu hingga air mendidih
Jika ada buka kemasan mie instant Jika sudah mendidih, masukkan mie
Keluarkan mie beserta bumbu- Tunggu hingga mie matang
bumbunya Setelah mie matang, matikan
Siapkan piring kompor
Lihat kondisi piring, jika kotor dicuci Siapkan saringan, lihat kondisi
dulu saringan jika kotor dicuci dulu
Jika bersih siap digunakan Tuang mie ke saringan, tunggu
Buka bumbu-bumbunya sampai airnya tiris
Letakkan didalam piring Masukkan kedalam piring
Siapkan panci Siapkan sendok dan garpu, lihat
Lihat kondisi panci, jika kotor dicuci kondisinya jika kotor dicuci duu
dulu Jika bersih aduk mie menggunakan
sendok dan garpu
Jika bersih panci dengan air
secukupnya Mie goreng siap dihidangkan
latihan
Buatlah Algoritma Pergi ke Kampus?
Buatlah Algoritma Pergi nonton Bioskop?
Buatlah Algoritma Membuat Pisang Keju?
Sekian!!!!!!