際際滷

際際滷Share a Scribd company logo
& 
Analisis algoritma
Apakah itu Algoritma?? 
Algoritma merupakan langkah-langkah 
(prosedur) yang harus 
dilakukan untuk menyelesaikan 
sebuah masalah.
Algoritma harus memiliki.... 
Masalah, yaitu sebuah persoalan yang ingin 
diselesaikan oleh sebuah algoritma. 
Masukan, yaitu contoh data atau keadaan yang 
menjadi permasalahan. 
Keluaran, yaitu bentuk akhir dari data atau keadaan 
setelah algoritma diimplementasikan ke masukan. 
Keluaran merupakan hasil ideal yang diinginkan dan 
dianggap telah menyelesaikan masalah.
Contoh Solusi Algoritma
Bagaimana algoritma yang baik?? 
Benar 
di mana algoritma menyelesaikan masalah dengan 
tepat, sesuai dengan definisi masukan / keluaran 
algoritma yang diberikan. 
Efisien 
menyelesaikan masalah tanpa memberatkan bagian lain dari 
apliikasi. Sebuah algoritma yang tidak efisien akan menggunakan 
sumber daya (memori, CPU) yang besar dan memberatkan aplikasi 
yang mengimplementasikan algoritma tersebut. 
Mudah 
artinya sebuah algoritma yang baik harus dapat dimengerti dengan 
mudah sehingga implementasi algoritma dapat dilakukan siapapun 
dengan pendidikan yang tepat, dalam waktu yang masuk akal
Pembuktian Kebenaran Algoritma 
Sebuah algoritma dikatakan telah benar jika 
algoritma tersebut dapat memberikan 
keluaran yang benar jika menerima masukan 
sesuai dengan definisi algoritma tersebut, dan 
algoritma tersebut terbukti akan selalu dapat 
diterminasi (berakhir).
Bagaimana pembuktian kebenaran 
algoritma?? 
Induksi 
Matematika 
Pembuktian 
Kontradiktif 
Pembuktian 
Kontrapositif 
Metode 
Formal 
Tapi dalam pembuktian kebenaran algoritma ini, kita hanya menggunakan 
INDUKSI MATEMATIKA
Induksi 
Matematika 
Induksi matematika merupakan alat pembuktian 
matematis yang digunakan untuk membuktikan 
pernyataan atau proses yang melibatkan 
perhitungan bilangan asli yang berulang 
Pembuktian kebenaran algoritma dengan 
Induksi Matematika dapat dilakukan dengan 2 
cara, yaitu: 
Melakukan pembuktian kasus dasar (base case), yaitu membuktikan 
bahwa sebuah pernyataan (fungsi) matematika atau algoritma 
bernilai benar jika diaplikasikan pada bilangan pertama yang sah 
sesuai dengan spesifikasi fungsi atau algoritma tersebut. 
1 
2 fungsi jika kebenaran fungsi diketahui. 
Melakukan induksi, yaitu membuktikan bahwa kebenaran dari
Dengan membuktikan kedua hal tersebut, kita dapat 
mengambil kesimpulan bahwa sebuah fungsi matematika 
atau algoritma bernilai benar untuk semua bilangan asli. 
Jika diimplementasikan dengan tepat, induksi matematika 
dapat juga digunakan untuk membuktikan kebenaran 
algoritma rekursif seperti penelusuran pohon (tree).
Contoh 1. Deret Aritmatika 
karena hasil akhir dari ruas 
kanan dan ruas kiri adalah 
sama (1 ), maka dapat 
dikatakan bahwa kasus 
dasar telah terbukti.
dan seperti yang dapat dilihat, ruas kiri dari p(k + 1) telah menjadi sama 
dengan ruas kanannya, sehingga dapat dikatakan bahwa tahap induksi 
telah berhasil dibuktikan benar. 
Dengan pembuktian kasus dasar dan induksi yang bernilai 
benar, kita dapat menyimpulkan bahwa P(n) bernilai benar 
untuk n  1.
Contoh 2. Pembuktian Hipotesa
Desain dan analisis algoritma
Desain dan analisis algoritma
dan secara otomatis tentunya pernyataan matematis 
tersebut dapat kita buktikan dengan menggunakan induksi 
matematika. Pembuktian perulangan yang lebih kompleks 
sendiri dapat dilakukan dengan teknik yang dikenal 
dengan nama loop invariant, yang tidak akan dijelaskan 
pada pembahasan ini.
Pemodelan Masalah
Jenis-jenis Pemodelan Algoritma 
1. Model Numerik 
Model numerik merupakan model 
matematis yang paling sederhana, yang 
dibuat untuk mendeskripsikan jumlah atau 
ukuran dari sesuatu 
2. Model Simbolik 
Terdapat empat buah simbol dasar untuk 
pemrosesan angka, yaitu +,,,dan歎. Simbol = juga 
digunakan untuk menandakan kesamaan nilai 
antara ruas kiri dan ruas kanan dari =.
Desain dan analisis algoritma
3. Model Spasial 
Tidak semua permasalahan yang diselesaikan oleh matematika atau 
komputer selalu berhubungan langsung dengan angka. Terkadang 
kita menjumpai juga masalah-masalah yang berhubungan dengan 
representasi dunia nyata seperti perhitungan jarak dua objek atau 
pencarian jalur terdekat untuk kendaraan. Secara tradisional, model 
untuk penyelesaian masalah seperti ini digambarkan dengan peta, 
graph, dan gambar-gambar teknis lainnya.
Desain dan analisis algoritma
4. Model Logis 
Model logis merupakan cara memodelkan masalah 
berdasarkan logika matematika. Terdapat empat 
cabang utama dari logika matematika, yaitu teori 
himpunan, teori model, teori rekursif, dan teori 
pembuktian 
Masing-masing teori memiliki cara pemodelan yang 
berbeda-beda, untuk merepresentasikan masalah 
yang berbeda. Pembahasan ini hanya akan 
membahas pemodelan logis pada bidang himpunan, 
dan relevansinya dengan salah satu sistem yang 
paling populer di dunia komputer: basis data.
Himpunan, seperti namanya, memodelkan sekumpulan 
entitas yang memiliki atribut (ciri khas) tertentu. Dalam 
menentukan atribut tujuan dari pengunaan himpunan lebih 
penting daripada kesamaan ciri khas dari entitas, sehingga 
terkadang atribut dari elemen-elemen dalam himpunan tidak 
selalu dapat dilihat dengan mudah. 
Misalnya, kita dapat mendeklarasikan sebuah himpunan 
dengan nama Himpunan Barang dalam Handbag dengan isi 
berupa handphone, gunting kuku, alat make-up, tissue, 
dompet, alat tulis, dan karet gelang. Secara sekilas semua 
entitas yang ada di dalam himpunan tidak terlihat memiliki 
atribut yang jelas, meskipun himpunan ini adalah himpunan 
yang valid.
Desain dan analisis algoritma
Desain dan analisis algoritma
5. Model Statistik 
Terdapat banyak permasalahan di dunia nyata yang tidak dapat 
dimodelkan dengan mudah menggunakan keempat model matematis 
yang telah kita bahas sebelumnya. Terkadang kita dihadapkan dengan 
permasalahan yang sangat kompleks, sampai-sampai memodelkan dan 
menganalisa setiap situasi yang mempengaruhi masalah tersebut akan 
menjadi sangat mahal, memerlukan banyak orang, dan banyak waktu. 
Sebagai contoh, bayangkan jika kita diminta untuk melakukan prakiraan 
cuaca. Dengan menggunakan model matematis yang ada, kita akan 
memerlukan sangat banyak kalkulasi, yang saling mempengaruhi satu 
sama lainnya. Praktisnya, kita harus mampu melakukan simulasi terhadap 
seluruh elemen yang ada di bumi untuk melakukan prakiraan cuaca 
dengan tepat. Hal ini tentunya sangat tidak efektif untuk dilakukan. Lalu 
bagaimana para ahli sekarang melakukan prakiraan cuaca?
Desain dan analisis algoritma
6. Pseudocode 
Semua model matematis yang telah dijelaskan sebelumnya merupakan model 
matematika yang digunakan dan dimengerti oleh manusia. Jika ingin 
menggunakan model matematis tersebut di komputer, terlebih dahulu kita 
harus melakukan konversi menjadi kode program yang dapat dibaca dan 
dimengerti oleh komputer. Kode program sendiri dimodelkan dengan banyak 
cara, dan yang paling relevan dengan algoritma ialah pseudocode. 
Semua model matematis yang telah dijelaskan sebelumnya merupakan model 
matematika yang digunakan dan dimengerti oleh manusia. Jika ingin 
menggunakan model matematis tersebut di komputer, terlebih dahulu kita 
harus melakukan konversi menjadi kode program yang dapat dibaca dan 
dimengerti oleh komputer. Kode program sendiri dimodelkan dengan banyak 
cara, dan yang paling relevan dengan algoritma ialah pseudocode.
Pengembangan Model 
Apakah masalah yang dihadapi merupakan masalah yang memerlukan solusi matematis? Jika 
masalahnya merupakan masalah numerik (perhitungan angka) atau logis, maka jawabannya sudah pasti 
ya. Jika solusi dari masalah berupa pendapat, maka kemungkinan jawabannya adalah tidak. 
Fakta-fakta relevan apa saja yang diketahui? Masalah umum yang dihadapi saat akan membangun 
solusi adalah informasi yang terlalu banyak, yang terkadang mencuri fokus kita dari akar masalah. 
Pisahkan antara fakta (informasi) yang relevan dari keseluruhan informasi yang didapatkan. 
Fakta atau informasi tambahan apa yang kita perlukan untuk menyelesaikan masalah? Di mana atau 
bagaimana cara agar kita mendapatkan fakta-fakta tersebut? 
Adakah langkah atau metode alami untuk menyelesaikan masalahnya? Metode alami artinya metode 
yang umumnya digunakan oleh manusia. Misalnya, untuk menghitung total dari sekumpulan nilai kita 
dapat menambahkan seluruh bilangan yang ada di dalam kumpulan nilai tersebut.
Apakah fakta-fakta yang ada dapat direpresentasikan oleh simbol matematis dan dikategorikan menjadi 
fakta yang diketahui dan tidak diketahui? 
Apakah terdapat model lama yang dapat digunakan atau disesuaikan untuk menyelesaikan masalah 
kita? 
Jika terdapat model yang telah dikembangkan sebelumnya untuk masalah kita, apakah model tersebut 
dapat diaplikasikan pada komputer? 
Bagaimana kita dapat mengaplikasikan model dari solusi kita sehingga model tersebut dapat dibuat 
menjadi program komputer dengan mudah?
Apakah masalah yang dihadapi merupakan masalah yang memerlukan solusi 
matematis? 
Ya. Perhitungan total bunga bunga jelas akan melibatkan matematika. 
Fakta-fakta relevan apa saja yang diketahui? 
Bunga pinjaman sebesar 15% per tahun.
Fakta atau informasi tambahan apa yang kita perlukan untuk menyelesaikan masalah? 
Beberapa fakta tambahan yang harus ada tetapi tidak disebutkan secara eksplisit pada 
deskripsi masalah: 
1. Jumlah pinjaman awal. Untuk menghitung total pinjaman dengan bunganya jelas kita 
harus mengetahui jumlah pinjaman awal terlebih dahulu. 
2. Lama pinjaman. Tanpa adanya lama pinjaman, kita tidak dapat mengetahui dengan 
pasti total bunga yang harus ditambahkan. 
Adakah langkah atau metode alami untuk menyelesaikan masalahnya? 
Ya, lakukan perhitungan bunga tiap tahunnya, dan tambahkan hasil kalkulasi tersebut 
sampai tahun pinjaman terakhir. 
Apakah fakta-fakta yang ada dapat direpresentasikan oleh simbol matematis? 
Dari fakta-fakta yang kita dapatkan pada langkah kedua dan ketiga, kita dapat 
mendefinisikan simbol matematis seperti berikut:
Apakah terdapat model lama yang dapat digunakan untuk menyelesaikan masalah kita? 
Ya, perhitungan bunga majemuk yang dimodelkan dengan rumus: T=p(1+b)^t. 
Apakah model yang ada sebelumnya pada langkah 6 dapat diaplikasikan pada 
komputer? 
Kemungkinan tidak, karena perhitungan bunga majemuk merupakan perhitungan yang 
tidak banyak diketahui orang (terutama pada bidang pemrograman), dan juga memiliki 
banyak aturan kompleks yang harus dimengerti terlebih dahulu. 
Karena kasus yang sederhana, kita akan lebih mudah mengimplementasikan algoritma 
kita sendiri, yang cukup melakukan iterasi dan menambahkan total pinjaman setiap 
tahunnya. Mari kita coba kembangkan model iterasi yang dapat digunakan.
yang kemudian akan kita implementasikan sebagai fungsi penghitung total 
pinjaman.
Bagaimana kita dapat mengaplikasikan model dari solusi kita sehingga model tersebut 
dapat dibuat menjadi program komputer dengan mudah? 
Pseudocode yang ada sudah sangat jelas, dan baris per barisnya dapat 
diimplementasikan secara langsung menggunakan bahasa pemrograman apapun. 
Setelah mendapatkan model penyelesaian masalah sampai pada pseudocode-nya, kita 
kemudian dapat mengimplementasikan solusi yang dikembangkan menggunakan bahasa 
pemrograman yang diinginkan.

More Related Content

What's hot (20)

Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
Siti Khotijah
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
KuliahKita
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Adam Mukharil Bachtiar
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunan
Fajar Istiqomah
Contoh soal dan pembahasan subgrup
Contoh soal dan pembahasan subgrupContoh soal dan pembahasan subgrup
Contoh soal dan pembahasan subgrup
Kabhi Na Kehna
Contoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzyContoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzy
Zaenal Khayat
Matriks eselon baris dan eselon baris tereduksi
Matriks eselon baris dan eselon baris tereduksiMatriks eselon baris dan eselon baris tereduksi
Matriks eselon baris dan eselon baris tereduksi
Elemantking Daeva
relasi himpunan
relasi himpunanrelasi himpunan
relasi himpunan
anggi syahputra
Tabel t, z dan f dan chi kuadrat
Tabel t, z dan f dan chi kuadratTabel t, z dan f dan chi kuadrat
Tabel t, z dan f dan chi kuadrat
Ir. Zakaria, M.M
Interaksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual ModelInteraksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual Model
Eko Kurniawan Khannedy
tgsdm3_ kelompok 7
 tgsdm3_ kelompok 7 tgsdm3_ kelompok 7
tgsdm3_ kelompok 7
Alvian yudha Prawira
Jawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihanJawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihan
Bina Sarana Informatika
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi AlgoritmaAnalisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Adam Mukharil Bachtiar
Statistika Probabilitas
Statistika ProbabilitasStatistika Probabilitas
Statistika Probabilitas
Iskandar Tambunan
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
zachrison htg
Integral Lipat Tiga
Integral Lipat TigaIntegral Lipat Tiga
Integral Lipat Tiga
Kelinci Coklat
Kalkulus sistem bilangan
Kalkulus sistem bilanganKalkulus sistem bilangan
Kalkulus sistem bilangan
Gusti Rahman
kriptografi hill cipher
kriptografi hill cipherkriptografi hill cipher
kriptografi hill cipher
Adi Ginanjar Kusuma
Makalah aturan trapesium
Makalah aturan trapesiumMakalah aturan trapesium
Makalah aturan trapesium
desita Anggraini
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
Siti Khotijah
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
Siti Khotijah
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
Kriptograf - Algoritma Kriptografi Klasik (bagian 1)
KuliahKita
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Adam Mukharil Bachtiar
Pertemuan 02 teori dasar himpunan
Pertemuan 02   teori dasar himpunanPertemuan 02   teori dasar himpunan
Pertemuan 02 teori dasar himpunan
Fajar Istiqomah
Contoh soal dan pembahasan subgrup
Contoh soal dan pembahasan subgrupContoh soal dan pembahasan subgrup
Contoh soal dan pembahasan subgrup
Kabhi Na Kehna
Contoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzyContoh peyelesaian logika fuzzy
Contoh peyelesaian logika fuzzy
Zaenal Khayat
Matriks eselon baris dan eselon baris tereduksi
Matriks eselon baris dan eselon baris tereduksiMatriks eselon baris dan eselon baris tereduksi
Matriks eselon baris dan eselon baris tereduksi
Elemantking Daeva
Tabel t, z dan f dan chi kuadrat
Tabel t, z dan f dan chi kuadratTabel t, z dan f dan chi kuadrat
Tabel t, z dan f dan chi kuadrat
Ir. Zakaria, M.M
Interaksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual ModelInteraksi Manusia dan Komputer : Conceptual Model
Interaksi Manusia dan Komputer : Conceptual Model
Eko Kurniawan Khannedy
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi AlgoritmaAnalisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Analisis Algoritma - Kelas-kelas Dasar Efisiensi Algoritma
Adam Mukharil Bachtiar
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
zachrison htg
Integral Lipat Tiga
Integral Lipat TigaIntegral Lipat Tiga
Integral Lipat Tiga
Kelinci Coklat
Kalkulus sistem bilangan
Kalkulus sistem bilanganKalkulus sistem bilangan
Kalkulus sistem bilangan
Gusti Rahman
Makalah aturan trapesium
Makalah aturan trapesiumMakalah aturan trapesium
Makalah aturan trapesium
desita Anggraini
Matematika Diskrit kombinatorial
Matematika Diskrit  kombinatorialMatematika Diskrit  kombinatorial
Matematika Diskrit kombinatorial
Siti Khotijah

Viewers also liked (6)

Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02
KuliahKita
Modul pengajaran analisa perancangan sistem informasi
Modul pengajaran analisa perancangan sistem informasiModul pengajaran analisa perancangan sistem informasi
Modul pengajaran analisa perancangan sistem informasi
Apriyanto_apo
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritma
Apriyanto_apo
Algorithm & Data Structure - Algoritma Pengurutan
Algorithm & Data Structure - Algoritma PengurutanAlgorithm & Data Structure - Algoritma Pengurutan
Algorithm & Data Structure - Algoritma Pengurutan
Dudy Ali
Mengintip Kompleksitas
Mengintip KompleksitasMengintip Kompleksitas
Mengintip Kompleksitas
Iwan Pranoto
Struktur Pemrograman Java
Struktur Pemrograman JavaStruktur Pemrograman Java
Struktur Pemrograman Java
roji muhidin
Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02
KuliahKita
Modul pengajaran analisa perancangan sistem informasi
Modul pengajaran analisa perancangan sistem informasiModul pengajaran analisa perancangan sistem informasi
Modul pengajaran analisa perancangan sistem informasi
Apriyanto_apo
Micro teaching konsep logika algoritma
Micro teaching konsep logika algoritmaMicro teaching konsep logika algoritma
Micro teaching konsep logika algoritma
Apriyanto_apo
Algorithm & Data Structure - Algoritma Pengurutan
Algorithm & Data Structure - Algoritma PengurutanAlgorithm & Data Structure - Algoritma Pengurutan
Algorithm & Data Structure - Algoritma Pengurutan
Dudy Ali
Mengintip Kompleksitas
Mengintip KompleksitasMengintip Kompleksitas
Mengintip Kompleksitas
Iwan Pranoto
Struktur Pemrograman Java
Struktur Pemrograman JavaStruktur Pemrograman Java
Struktur Pemrograman Java
roji muhidin

Similar to Desain dan analisis algoritma (20)

Materi metode numerik
Materi metode numerikMateri metode numerik
Materi metode numerik
IrnawatiGailea
Bab1 mata kuliah metode numerik
Bab1 mata kuliah metode numerik Bab1 mata kuliah metode numerik
Bab1 mata kuliah metode numerik
Izhan Nassuha
Metode numerik-stmik-aub
Metode numerik-stmik-aubMetode numerik-stmik-aub
Metode numerik-stmik-aub
Muhammad Martayuda
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma
casnadi
Tugas metode numerik ( anida dan yeni)
Tugas metode numerik ( anida dan yeni)Tugas metode numerik ( anida dan yeni)
Tugas metode numerik ( anida dan yeni)
Anneedha Lvfee
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numerik
softscients
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
casnadi
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesorModul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Beny Abd
BAB 2 Berpikir algoritma dan berlangkah-langkahpptx
BAB 2 Berpikir algoritma dan berlangkah-langkahpptxBAB 2 Berpikir algoritma dan berlangkah-langkahpptx
BAB 2 Berpikir algoritma dan berlangkah-langkahpptx
tiksekolahananda
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrograman
UNTUNGSG
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libre
Alvin Setiawan
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritma
Kang Koko
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
IwanSumantri7
PPT SMA XI BAB 2 Strategi Algoritma.ppsx
PPT SMA XI BAB 2 Strategi Algoritma.ppsxPPT SMA XI BAB 2 Strategi Algoritma.ppsx
PPT SMA XI BAB 2 Strategi Algoritma.ppsx
ssuserd16d59
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
AditiaOktaviyanto1
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp0209 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
Haris Ismail
Simulasi_Sistem.pptx
Simulasi_Sistem.pptxSimulasi_Sistem.pptx
Simulasi_Sistem.pptx
AgriTriansyah2
Terbaik jurusan matematika komputasi
Terbaik jurusan matematika komputasiTerbaik jurusan matematika komputasi
Terbaik jurusan matematika komputasi
nanda570316
Materi metode numerik
Materi metode numerikMateri metode numerik
Materi metode numerik
IrnawatiGailea
Bab1 mata kuliah metode numerik
Bab1 mata kuliah metode numerik Bab1 mata kuliah metode numerik
Bab1 mata kuliah metode numerik
Izhan Nassuha
Sejarah Algoritma
Sejarah Algoritma Sejarah Algoritma
Sejarah Algoritma
casnadi
Tugas metode numerik ( anida dan yeni)
Tugas metode numerik ( anida dan yeni)Tugas metode numerik ( anida dan yeni)
Tugas metode numerik ( anida dan yeni)
Anneedha Lvfee
pengantar metode numerik
 pengantar metode numerik pengantar metode numerik
pengantar metode numerik
softscients
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
casnadi
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesorModul teknik pemrograman mikrokontroler dan mikroprosesor
Modul teknik pemrograman mikrokontroler dan mikroprosesor
Beny Abd
BAB 2 Berpikir algoritma dan berlangkah-langkahpptx
BAB 2 Berpikir algoritma dan berlangkah-langkahpptxBAB 2 Berpikir algoritma dan berlangkah-langkahpptx
BAB 2 Berpikir algoritma dan berlangkah-langkahpptx
tiksekolahananda
Dasar pemrograman
Dasar pemrogramanDasar pemrograman
Dasar pemrograman
UNTUNGSG
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libre
Alvin Setiawan
Bab 1 pengantar algoritma
Bab 1 pengantar algoritmaBab 1 pengantar algoritma
Bab 1 pengantar algoritma
Kang Koko
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
Materi Lokakarya PMM Untuk memahami apa itu Computational Thinking Dalam Pemb...
IwanSumantri7
PPT SMA XI BAB 2 Strategi Algoritma.ppsx
PPT SMA XI BAB 2 Strategi Algoritma.ppsxPPT SMA XI BAB 2 Strategi Algoritma.ppsx
PPT SMA XI BAB 2 Strategi Algoritma.ppsx
ssuserd16d59
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
2) APLIKASI-APLIKASI ATAU SOFTWARE-SOFTWARE PEMBELAJARAN MATEMATIKA.pptx
AditiaOktaviyanto1
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp0209 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
09 tajuk-2-operasi-dan-pengiraan-130218023650-phpapp02
Haris Ismail
Simulasi_Sistem.pptx
Simulasi_Sistem.pptxSimulasi_Sistem.pptx
Simulasi_Sistem.pptx
AgriTriansyah2
Terbaik jurusan matematika komputasi
Terbaik jurusan matematika komputasiTerbaik jurusan matematika komputasi
Terbaik jurusan matematika komputasi
nanda570316

Recently uploaded (20)

Danantara: Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Danantara:  Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...Danantara:  Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Danantara: Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Dadang Solihin
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptxSAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
Baharin Salleh
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdfKUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
PT. DUTA MEDIA PRESS
Muqaddimah ANGGARAN DASAR Muhammadiyah .pptx
Muqaddimah ANGGARAN DASAR  Muhammadiyah .pptxMuqaddimah ANGGARAN DASAR  Muhammadiyah .pptx
Muqaddimah ANGGARAN DASAR Muhammadiyah .pptx
suwaibahkapa2
PPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptxPPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptx
rahmiati190700
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MUMUL CHAN
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.pptPELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
ALEENMPP
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docxBANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
AzuraAgusnasya
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdfBRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
Syarifatul Marwiyah
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Dadang Solihin
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information SystemsLembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Ainul Yaqin
Langkah-langkah Pembuatan Microsite.pptx
Langkah-langkah Pembuatan Microsite.pptxLangkah-langkah Pembuatan Microsite.pptx
Langkah-langkah Pembuatan Microsite.pptx
NurulIlyas3
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Kelas
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptxPPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
hendipurnama1
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKASOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
azizwidyamukti02
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Murad Maulana
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Tata Naipospos
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
Dita835610
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptxPPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
SausanHidayahNova
Random Number Generator Teknik Simulasi.pdf
Random Number Generator Teknik Simulasi.pdfRandom Number Generator Teknik Simulasi.pdf
Random Number Generator Teknik Simulasi.pdf
PratamaYulyNugraha
Danantara: Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Danantara:  Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...Danantara:  Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Danantara: Pesimis atau Optimis? Podcast Ikatan Alumni Lemhannas RI IKAL Lem...
Dadang Solihin
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptxSAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
SAINS TINGKATAN 5 BAB 6 ELEKTROKIMIA.pptx
Baharin Salleh
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdfKUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
KUMPULAN CERPEN SMAN 2 MUARA BADAK KALIMANTAN TIMUR.pdf
PT. DUTA MEDIA PRESS
Muqaddimah ANGGARAN DASAR Muhammadiyah .pptx
Muqaddimah ANGGARAN DASAR  Muhammadiyah .pptxMuqaddimah ANGGARAN DASAR  Muhammadiyah .pptx
Muqaddimah ANGGARAN DASAR Muhammadiyah .pptx
suwaibahkapa2
PPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptxPPT Perkawinan (Poligami, Monogami).pptx
PPT Perkawinan (Poligami, Monogami).pptx
rahmiati190700
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MODUL AJAR SENI MUSIK KELAS VIII " ALAT MUSIK TRADISIONAL"
MUMUL CHAN
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.pptPELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
PELAKSANAAN RPI MURID PENDIDIKAN KHASS.ppt
ALEENMPP
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docxBANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
BANGSA DAN KARAKTERISTIK TERNAK KAMBING.docx
AzuraAgusnasya
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdfBRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
BRIEF SAPA RAMADHAN Universitas Al-Falah As-Sunniyah Kencong Jember 2025.pdf
Syarifatul Marwiyah
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Restrukturisasi dan Redistribusi Ekonomi melalui Danantara: Pesimis atau Opti...
Dadang Solihin
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information SystemsLembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Lembar Kerja Mahasiswa Applied Artificial Intelligence in Information Systems
Ainul Yaqin
Langkah-langkah Pembuatan Microsite.pptx
Langkah-langkah Pembuatan Microsite.pptxLangkah-langkah Pembuatan Microsite.pptx
Langkah-langkah Pembuatan Microsite.pptx
NurulIlyas3
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum MerdekaModul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Ajar Matematika Kelas 11 Fase F Kurikulum Merdeka
Modul Kelas
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptxPPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
PPT Qurdis Bab 4 kelas IX MTs/SMP SMT 2.pptx
hendipurnama1
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKASOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
SOAL LATIHAN PJOK KELAS 4 SD KURIKULUM MERDEKA
azizwidyamukti02
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Analisis Subjek Literatur Pada Disertasi Kajian Budaya dan Media (KBM) Sekola...
Murad Maulana
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Apakah daging tanpa tulang dan tanpa limfoglandula aman diperdagangkan? Ditje...
Tata Naipospos
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
PPT SISTEM PEREDARAN DARAH MANUSIA KELAS 8
Dita835610
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptxPPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
PPT PAI-Kelompok 3-X MIPA 1-Sumber-sumber Hukum Islam (Ijtihad).pptx
SausanHidayahNova
Random Number Generator Teknik Simulasi.pdf
Random Number Generator Teknik Simulasi.pdfRandom Number Generator Teknik Simulasi.pdf
Random Number Generator Teknik Simulasi.pdf
PratamaYulyNugraha

Desain dan analisis algoritma

  • 2. Apakah itu Algoritma?? Algoritma merupakan langkah-langkah (prosedur) yang harus dilakukan untuk menyelesaikan sebuah masalah.
  • 3. Algoritma harus memiliki.... Masalah, yaitu sebuah persoalan yang ingin diselesaikan oleh sebuah algoritma. Masukan, yaitu contoh data atau keadaan yang menjadi permasalahan. Keluaran, yaitu bentuk akhir dari data atau keadaan setelah algoritma diimplementasikan ke masukan. Keluaran merupakan hasil ideal yang diinginkan dan dianggap telah menyelesaikan masalah.
  • 5. Bagaimana algoritma yang baik?? Benar di mana algoritma menyelesaikan masalah dengan tepat, sesuai dengan definisi masukan / keluaran algoritma yang diberikan. Efisien menyelesaikan masalah tanpa memberatkan bagian lain dari apliikasi. Sebuah algoritma yang tidak efisien akan menggunakan sumber daya (memori, CPU) yang besar dan memberatkan aplikasi yang mengimplementasikan algoritma tersebut. Mudah artinya sebuah algoritma yang baik harus dapat dimengerti dengan mudah sehingga implementasi algoritma dapat dilakukan siapapun dengan pendidikan yang tepat, dalam waktu yang masuk akal
  • 6. Pembuktian Kebenaran Algoritma Sebuah algoritma dikatakan telah benar jika algoritma tersebut dapat memberikan keluaran yang benar jika menerima masukan sesuai dengan definisi algoritma tersebut, dan algoritma tersebut terbukti akan selalu dapat diterminasi (berakhir).
  • 7. Bagaimana pembuktian kebenaran algoritma?? Induksi Matematika Pembuktian Kontradiktif Pembuktian Kontrapositif Metode Formal Tapi dalam pembuktian kebenaran algoritma ini, kita hanya menggunakan INDUKSI MATEMATIKA
  • 8. Induksi Matematika Induksi matematika merupakan alat pembuktian matematis yang digunakan untuk membuktikan pernyataan atau proses yang melibatkan perhitungan bilangan asli yang berulang Pembuktian kebenaran algoritma dengan Induksi Matematika dapat dilakukan dengan 2 cara, yaitu: Melakukan pembuktian kasus dasar (base case), yaitu membuktikan bahwa sebuah pernyataan (fungsi) matematika atau algoritma bernilai benar jika diaplikasikan pada bilangan pertama yang sah sesuai dengan spesifikasi fungsi atau algoritma tersebut. 1 2 fungsi jika kebenaran fungsi diketahui. Melakukan induksi, yaitu membuktikan bahwa kebenaran dari
  • 9. Dengan membuktikan kedua hal tersebut, kita dapat mengambil kesimpulan bahwa sebuah fungsi matematika atau algoritma bernilai benar untuk semua bilangan asli. Jika diimplementasikan dengan tepat, induksi matematika dapat juga digunakan untuk membuktikan kebenaran algoritma rekursif seperti penelusuran pohon (tree).
  • 10. Contoh 1. Deret Aritmatika karena hasil akhir dari ruas kanan dan ruas kiri adalah sama (1 ), maka dapat dikatakan bahwa kasus dasar telah terbukti.
  • 11. dan seperti yang dapat dilihat, ruas kiri dari p(k + 1) telah menjadi sama dengan ruas kanannya, sehingga dapat dikatakan bahwa tahap induksi telah berhasil dibuktikan benar. Dengan pembuktian kasus dasar dan induksi yang bernilai benar, kita dapat menyimpulkan bahwa P(n) bernilai benar untuk n 1.
  • 15. dan secara otomatis tentunya pernyataan matematis tersebut dapat kita buktikan dengan menggunakan induksi matematika. Pembuktian perulangan yang lebih kompleks sendiri dapat dilakukan dengan teknik yang dikenal dengan nama loop invariant, yang tidak akan dijelaskan pada pembahasan ini.
  • 17. Jenis-jenis Pemodelan Algoritma 1. Model Numerik Model numerik merupakan model matematis yang paling sederhana, yang dibuat untuk mendeskripsikan jumlah atau ukuran dari sesuatu 2. Model Simbolik Terdapat empat buah simbol dasar untuk pemrosesan angka, yaitu +,,,dan歎. Simbol = juga digunakan untuk menandakan kesamaan nilai antara ruas kiri dan ruas kanan dari =.
  • 19. 3. Model Spasial Tidak semua permasalahan yang diselesaikan oleh matematika atau komputer selalu berhubungan langsung dengan angka. Terkadang kita menjumpai juga masalah-masalah yang berhubungan dengan representasi dunia nyata seperti perhitungan jarak dua objek atau pencarian jalur terdekat untuk kendaraan. Secara tradisional, model untuk penyelesaian masalah seperti ini digambarkan dengan peta, graph, dan gambar-gambar teknis lainnya.
  • 21. 4. Model Logis Model logis merupakan cara memodelkan masalah berdasarkan logika matematika. Terdapat empat cabang utama dari logika matematika, yaitu teori himpunan, teori model, teori rekursif, dan teori pembuktian Masing-masing teori memiliki cara pemodelan yang berbeda-beda, untuk merepresentasikan masalah yang berbeda. Pembahasan ini hanya akan membahas pemodelan logis pada bidang himpunan, dan relevansinya dengan salah satu sistem yang paling populer di dunia komputer: basis data.
  • 22. Himpunan, seperti namanya, memodelkan sekumpulan entitas yang memiliki atribut (ciri khas) tertentu. Dalam menentukan atribut tujuan dari pengunaan himpunan lebih penting daripada kesamaan ciri khas dari entitas, sehingga terkadang atribut dari elemen-elemen dalam himpunan tidak selalu dapat dilihat dengan mudah. Misalnya, kita dapat mendeklarasikan sebuah himpunan dengan nama Himpunan Barang dalam Handbag dengan isi berupa handphone, gunting kuku, alat make-up, tissue, dompet, alat tulis, dan karet gelang. Secara sekilas semua entitas yang ada di dalam himpunan tidak terlihat memiliki atribut yang jelas, meskipun himpunan ini adalah himpunan yang valid.
  • 25. 5. Model Statistik Terdapat banyak permasalahan di dunia nyata yang tidak dapat dimodelkan dengan mudah menggunakan keempat model matematis yang telah kita bahas sebelumnya. Terkadang kita dihadapkan dengan permasalahan yang sangat kompleks, sampai-sampai memodelkan dan menganalisa setiap situasi yang mempengaruhi masalah tersebut akan menjadi sangat mahal, memerlukan banyak orang, dan banyak waktu. Sebagai contoh, bayangkan jika kita diminta untuk melakukan prakiraan cuaca. Dengan menggunakan model matematis yang ada, kita akan memerlukan sangat banyak kalkulasi, yang saling mempengaruhi satu sama lainnya. Praktisnya, kita harus mampu melakukan simulasi terhadap seluruh elemen yang ada di bumi untuk melakukan prakiraan cuaca dengan tepat. Hal ini tentunya sangat tidak efektif untuk dilakukan. Lalu bagaimana para ahli sekarang melakukan prakiraan cuaca?
  • 27. 6. Pseudocode Semua model matematis yang telah dijelaskan sebelumnya merupakan model matematika yang digunakan dan dimengerti oleh manusia. Jika ingin menggunakan model matematis tersebut di komputer, terlebih dahulu kita harus melakukan konversi menjadi kode program yang dapat dibaca dan dimengerti oleh komputer. Kode program sendiri dimodelkan dengan banyak cara, dan yang paling relevan dengan algoritma ialah pseudocode. Semua model matematis yang telah dijelaskan sebelumnya merupakan model matematika yang digunakan dan dimengerti oleh manusia. Jika ingin menggunakan model matematis tersebut di komputer, terlebih dahulu kita harus melakukan konversi menjadi kode program yang dapat dibaca dan dimengerti oleh komputer. Kode program sendiri dimodelkan dengan banyak cara, dan yang paling relevan dengan algoritma ialah pseudocode.
  • 28. Pengembangan Model Apakah masalah yang dihadapi merupakan masalah yang memerlukan solusi matematis? Jika masalahnya merupakan masalah numerik (perhitungan angka) atau logis, maka jawabannya sudah pasti ya. Jika solusi dari masalah berupa pendapat, maka kemungkinan jawabannya adalah tidak. Fakta-fakta relevan apa saja yang diketahui? Masalah umum yang dihadapi saat akan membangun solusi adalah informasi yang terlalu banyak, yang terkadang mencuri fokus kita dari akar masalah. Pisahkan antara fakta (informasi) yang relevan dari keseluruhan informasi yang didapatkan. Fakta atau informasi tambahan apa yang kita perlukan untuk menyelesaikan masalah? Di mana atau bagaimana cara agar kita mendapatkan fakta-fakta tersebut? Adakah langkah atau metode alami untuk menyelesaikan masalahnya? Metode alami artinya metode yang umumnya digunakan oleh manusia. Misalnya, untuk menghitung total dari sekumpulan nilai kita dapat menambahkan seluruh bilangan yang ada di dalam kumpulan nilai tersebut.
  • 29. Apakah fakta-fakta yang ada dapat direpresentasikan oleh simbol matematis dan dikategorikan menjadi fakta yang diketahui dan tidak diketahui? Apakah terdapat model lama yang dapat digunakan atau disesuaikan untuk menyelesaikan masalah kita? Jika terdapat model yang telah dikembangkan sebelumnya untuk masalah kita, apakah model tersebut dapat diaplikasikan pada komputer? Bagaimana kita dapat mengaplikasikan model dari solusi kita sehingga model tersebut dapat dibuat menjadi program komputer dengan mudah?
  • 30. Apakah masalah yang dihadapi merupakan masalah yang memerlukan solusi matematis? Ya. Perhitungan total bunga bunga jelas akan melibatkan matematika. Fakta-fakta relevan apa saja yang diketahui? Bunga pinjaman sebesar 15% per tahun.
  • 31. Fakta atau informasi tambahan apa yang kita perlukan untuk menyelesaikan masalah? Beberapa fakta tambahan yang harus ada tetapi tidak disebutkan secara eksplisit pada deskripsi masalah: 1. Jumlah pinjaman awal. Untuk menghitung total pinjaman dengan bunganya jelas kita harus mengetahui jumlah pinjaman awal terlebih dahulu. 2. Lama pinjaman. Tanpa adanya lama pinjaman, kita tidak dapat mengetahui dengan pasti total bunga yang harus ditambahkan. Adakah langkah atau metode alami untuk menyelesaikan masalahnya? Ya, lakukan perhitungan bunga tiap tahunnya, dan tambahkan hasil kalkulasi tersebut sampai tahun pinjaman terakhir. Apakah fakta-fakta yang ada dapat direpresentasikan oleh simbol matematis? Dari fakta-fakta yang kita dapatkan pada langkah kedua dan ketiga, kita dapat mendefinisikan simbol matematis seperti berikut:
  • 32. Apakah terdapat model lama yang dapat digunakan untuk menyelesaikan masalah kita? Ya, perhitungan bunga majemuk yang dimodelkan dengan rumus: T=p(1+b)^t. Apakah model yang ada sebelumnya pada langkah 6 dapat diaplikasikan pada komputer? Kemungkinan tidak, karena perhitungan bunga majemuk merupakan perhitungan yang tidak banyak diketahui orang (terutama pada bidang pemrograman), dan juga memiliki banyak aturan kompleks yang harus dimengerti terlebih dahulu. Karena kasus yang sederhana, kita akan lebih mudah mengimplementasikan algoritma kita sendiri, yang cukup melakukan iterasi dan menambahkan total pinjaman setiap tahunnya. Mari kita coba kembangkan model iterasi yang dapat digunakan.
  • 33. yang kemudian akan kita implementasikan sebagai fungsi penghitung total pinjaman.
  • 34. Bagaimana kita dapat mengaplikasikan model dari solusi kita sehingga model tersebut dapat dibuat menjadi program komputer dengan mudah? Pseudocode yang ada sudah sangat jelas, dan baris per barisnya dapat diimplementasikan secara langsung menggunakan bahasa pemrograman apapun. Setelah mendapatkan model penyelesaian masalah sampai pada pseudocode-nya, kita kemudian dapat mengimplementasikan solusi yang dikembangkan menggunakan bahasa pemrograman yang diinginkan.