4. SSiisstteemm KKoommppuutteerr
• Sebuah sistem komputer terdiri dari:
– Hardware (perangkat keras) ,
– Software (perangkat lunak) dan
– Brainware,
• sedangkan Software dapat dikelompokkan
menjadi:
– Operating System Software,
– Programming Language Software
– dan Application Program Software.
6. DDeeffiinniissii PPrrooggrraamm
• Adalah kumpulan instruksi-instruksi tersendiri yang
biasanya disebut source code yang dibuat oleh
programmer (pembuat program).
• Program adalah kumpulan instruksi atau perintah
yang disusun sedemikian rupa sehingga mempunyai
urutan nalar yang tepat untuk menyelesaikan suatu
persoalan. (Menurut P. Insap Santosa).
• Instruksi (statement) yang dimaksud adalah syntax
(cara penulisan) sesuai dengan bahasa
pemrograman yang digunakan.
• Mempunyai komponen-komponen : Input, Output,
Proses, Percabangan dan Perulangan.
7. BBaahhaassaa PPeemmrrooggrraammaann
• Adalah alat untuk membuat program
• Contoh: C, C++, C#, Pascal, Basic, Perl,
PHP, ASP, JHP, Java, dll.
• Perbedaan: cara memberikan instruksi
• Persamaan: bertujuan menghasilkan
output yang sama
8. Paradigma PPeemmrrooggrraammaann
• Pemrograman Prosedural
– Berdasarkan urutan-urutan, sekuensial
– Program adalah suatu rangkaian prosedur untuk memanipulasi data.
Prosedur merupakan kumpulan instruksi yang dikerjakan secara
berurutan.
– Harus mengingat prosedur mana yang sudah dipanggil dan apa yang
sudah diubah.
• Pemrograman Fungsional
– Berdasarkan teori fungsi matematika
– Fungsi merupakan dasar utama program.
• Pemrograman Terstruktur
– Secara berurutan dan terstrukrtur.
– Program dapat dibagai-bagi menjadi prosedur dan fungsi.
– Contoh: PASCAL dan C
• Pemrograman Modular
– Pemrograman ini membentuk banyak modul.
– Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri
– Sebuah program dapat merupakan kumpulan modul-modul.
– Contoh: MODULA-2 atau ADA
9. Paradigma PPeemmrrooggrraammaann
• Pemrograman Berorientasi Obyek
– Pemrograman berdasarkan prinsip obyek, dimana obyek memiliki
data/variabel/property dan method/event/prosedur yang dapat
dimanipulasi
– Contoh: C++, Object Pascal, dan Java.
• Pemrograman Berorientasi Fungsi
– Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat
tergantung pada tujuan pembuatan bahasa pemrograman ini.
– Contoh: SQL (Structured Query Language), HTML, XML dan lain-lain.
• Pemrograman Deklaratif
– Pemrograman ini mendeskripsikan suatu masalah dengan
pernyataan daripada memecahkan masalah dengan implementasi
algoritma.
– Contoh: PROLOG
10. Siklus Hidup PPeerraannggkkaatt LLuunnaakk
((SSooffttwwaarree))
• Dilihat dari Struktur Sistem Komputer dan Siklus
diatas, Algoritma Pemrograman menempati posisi
dibagian implementasi karena bagian implementasi
merupakan bagian dimana pemrogram melakukan
proses coding (pembuatan program).
12. Langkah UUssee YYoouurr MMiinndd
1. 2 kanibal naik perahu ke seberang kiri
2. Pindahkan 1 kanibal ke seberang kiri
3. Perahu kembali ke seberang kanan dgn 1 kanibal
4. Ulangi langkah 1-3
5. 2 misionaris naik perahu ke seberang kiri
6. Di seberang kiri, tukar 1 kanibal dgn 1 misionaris di perahu
7. Perahu kembali ke seberang kanan dgn 1 kanibal dan 1
misionaris
8. Di seberang kanan, tukar kanibal di perahu dgn 1 misionaris
di seberang kanan
9. Perahu kembali ke seberang kiri dgn 2 misionaris
10. Turunkan semua misionaris di perahu ke seberang kiri
11. Perahu kembali ke seberang kanan dgn 1 kanibal
12. Ulangi langkah 1-3
13. 2 kanibal naik perahu ke seberang kiri
14. Turunkan kedua kanibal ke seberang kiri
13. AAllggoorriittmmaa
• Asal kata Algoritma berasal dari nama Abu
Ja’far Mohammed Ibn Musa al-Khowarizmi
• Ilmuan Persia yang menulis kitab al jabr
w’al-muqabala (rules of restoration and
reduction)
• Tahun 825 M
• Berasal dari Iran
14. DDeeffiinniissii AAllggoorriittmmaa
• Algoritma adalah urutan langkah logis tertentu untuk
memecahkan suatu masalah.
– Urutan langkah logis, yang berarti algoritma harus mengikuti
suatu urutan tertentu, tidak boleh melompat-lompat.
– (Dari Microsoft Press Computer and Internet Dictionaary 1997,
1998)H
• Alur pemikiran dalam menyelesaikan suatu pekerjaan
yang dituangkan secara tertulis.
– Alur pikiran, sehingga algoritma seseorang dapat juga berbeda
dari algoritma orang lain.
– Tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel
tertentu.
– (Dari Algoritma dan Struktur Data dengan C, C++, dan Java oleh
Moh Sjukani hal 1)H
15. CCoonnttoohh AAllggoorriittmmaa
• Memasak.
• Jika seseorang ingin mengirim surat kepada
kenalannya di tempat lain, langkah yang harus
dilakukan adalah:
– Menulis surat
– Surat dimasukkan ke dalam amplop tertutup
– Amplop ditempeli perangko secukupnya.
– Pergi ke Kantor Pos terdekat untuk mengirimkannya
• Dalam bidang komputer, algoritma sangat diperlukan
dalam menyelesaikan berbagai masalah
pemrograman, terutama dalam komputasi numeris.
• Tanpa algoritma yang dirancang baik maka proses
pemrograman akan menjadi salah, rusak, atau
lambat dan tidak efisien
16. MMaannuussiiaa -- KKoommppuutteerr
• Pelaksana algoritma adalah Komputer.
• Manusia dan komputer berkomunikasi dengan cara:
manusia memberikan perintah-perintah kepada
komputer berupa instruksi-instruksi yang disebut
program.
• Alat yang digunakan untuk membuat program tersebut
adalah bahasa pemrograman.
• Bahasa pemrograman sangat bermacam-macam: C,
C++, Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#,
J++ dan masih banyak bahasa lainnya. Dari berbagai
bahasa pemrograman cara memberikan instruksinya
berbeda-beda namun bertujuan menghasilkan output
yang sama
17. KKrriitteerriiaa AAllggoorriittmmaa
((DDoonnaalldd EE.. KKnnuutthh))H
• Input: algoritma dapat memiliki nol atau lebih inputan dari
luar.
• Output: algoritma harus memiliki minimal satu buah output
keluaran.
• Definiteness (pasti): algoritma memiliki instruksi-instruksi
yang jelas dan tidak ambigu.
• Finiteness (ada batas): algoritma harus memiliki titik berhenti
(stopping role).
• Effectiveness (tepat dan efisien): algoritma sebisa mungkin
harus dapat dilaksanakan dan efektif. Contoh instruksi yang
tidak efektif adalah: A = A + 0 atau A = A * 1
Namun ada beberapa program yang memang dirancang untuk
unterminatable: contoh Sistem Operasi
18. NNeexxtt……
• Tipe Data, Konstanta dan Variabel
• Struktur Input/Output
• Percabangan