ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Praktikum 
Algoritma dan Pemrograman 
By Faizah, S.Kom 
Lab. Komputasi Dasar 
Prodi Ilmu Komputer UGM
MMaatteerrii 
• Pengantar Algoritma 
• Konsep Bahasa Pemrograman 
• Tipe Data, Keywords, Konstanta, Variabel 
• Struktur Input/Output 
• Percabangan 
• Perulangan 
• Pemrograman Modular 
• Fungsi: parameter, kembalian fungsi by value 
• Array 1 dimensi 
• Array 2 dimensi 
• Manipulasi String
Pengantar
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.
Bagan SSiisstteemm KKoommppuutteerr
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.
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
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
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
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).
AAllggoorriittmmaa 
•Game : 
Use Your Mind!
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
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
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
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
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
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
NNeexxtt…… 
• Tipe Data, Konstanta dan Variabel 
• Struktur Input/Output 
• Percabangan

More Related Content

Alpro1

  • 1. Praktikum Algoritma dan Pemrograman By Faizah, S.Kom Lab. Komputasi Dasar Prodi Ilmu Komputer UGM
  • 2. MMaatteerrii • Pengantar Algoritma • Konsep Bahasa Pemrograman • Tipe Data, Keywords, Konstanta, Variabel • Struktur Input/Output • Percabangan • Perulangan • Pemrograman Modular • Fungsi: parameter, kembalian fungsi by value • Array 1 dimensi • Array 2 dimensi • Manipulasi String
  • 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