Sebuah pengantar
Terdapat beberapa langkah umum dalam pembuatan suatu program yaitu:
• Mendefinisikan masalah
• Mencari solusinya
• Menentukan algoritma
• Menulis program
• Menguji program
• Mendokumentasikan program
• Merawat program
You Need knowledge about “LOGIKA INFORMATIKA”
Lecturing Agreement
• Toleransi Waktu Keterlambatan :
a. Dosen : 15 Menit dari jadwal (jika ada halangan akan menghubungi ketua kelas)
b. Mahasiswa : 15 Menit setelah Dosen masuk
• Dress : No Oblong, No Sandal
• Handphone/ Other Gadgets : “Must be Silent”
• Penilaian :
a. Tugas/ Quiz : 25 %
b. Midtest : 30 %
c. Final/ Tugas Besar : 35 %
d. Kehadiran : 10 %
Others ???
What is Algorithm
• Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.
• Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah.
• Algoritma adalah urutan langkah-langkah berhingga untuk memecahkan masalah logika atau matematika.
• Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan.
More …
Menurut Donald E. Knuth dalam bukunya yang berjudul The Art of Computer Programming, algoritma harus mempunyai lima ciri penting :
• 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas (berhingga)
• 2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambiguous)
• 3. Algoritma memiliki nol atau lebih masukan (input)
• 4. Algoritma mempunya nol atau lebih keluaran (output)
• 5. Algoritma harus efektif dan efisien.
Programming
• perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer.
• realisasi algoritma dalam bahasa pemrograman • Program ditulis dalam salah satu bahasa
pemrograman • k e g i a t a n m e m b u a t p r o g r a m d i s e b u t
pemrograman (programming). Coding is cool J • Orang yang menulis program disebut programmer.
Notasi Algoritma
• Notasi I : untaian kalimat deskriptif
• Notasi II : diagram alir (flow chart)
• Notasi III : psudo - code
Flowcharting
• untaian simbol gambar (chart) yang menunjukkan aliran (flow) dari proses terhadap data.
• simbol-simbol flowchart dapat diklassifikasikan menjadi: simbol untuk program dan simbol untuk sistem (peralatan hardware).
1st meeting
Notasi I
Algoritma Luas_Segiempat
Menghitung luas segiempat dengan memasukkan nilai lebar dan panjang segiempat
Deklarasi
luas,panjang,lebar : bil. Bulat
Deskripsi
1. Masukkan nilai lebar dan panjang
2. Hitung luas sama dengan panjang kali lebar
3. Tampilkan Luas
Notasi III
Algoritma Luas_Segiempat
{Menghitung luas segiempat dengan memasukkan nilai lebar dan panjang segiempat}
Deklarasi
luas, panjang, lebar : integer
Deskripsi
input(panjang)
input(lebar)
Luas ß panjang * lebar
output(luas)
Belajar Memprogram Vs Belajar Bahasa Pemrograman
Belajar memprogram
• adalah belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami.
Belajar bahasa pemrograman
• berarti belajar memakai suatu bahasa, aturan aturan tata bahasanya, instruksi instruksinya, tata cara Pengoperasian Compilernya, dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis hanya dalam bahasa itu saja
Syarat Program yang Baik
• Benar
• berlaku umum untuk beragam data (valid)
• mudah dibaca
• mudah dimodifikasi dan dikembangkan
• efisiensi dalam penggunaan ruang dan waktu (kompleksitas rendah)
Paradigma dalam pemrograman
• Prosedural / Terstruktur
• Paradigma Fungsional
• Paradigma Deklaratif / Logika
• Paradigma Object Oriented
• Paradigma Konkruen
Prosedural
• Algoritma berisi urutan langkah - langkah
penyelesaian masalah à proses yang Procedural.
• Definisi Prosedural menurut Kamus Besar Bahasa
Indonesia:
Tahap tahap kegiatan untuk menyelesaikan suatu
aktivitas.
Metode langkah demi langkah secara eksak dalam
memecahkan suatu masalah
Fyi : Object Oriented
• mengkonstruksi program dari objek - Objek dalam ruang lingkup masalahnya
• sekumpulan objek yang mempunyai sifat yang sama. Dapat menjadi sebuah kelas. Sebuah kelas mempunya Attribute (sekumpulan sifat/ciri)
• menawarkan konsep modularitas, penggunaan ulang, dan kemudahan modifikasi.
Assignment
• #1 is mention on previous
• #2 upload di web informatika: • Sub kategori : logika&algoritma à tugas/quiz
LET’S ROCK