2. Capaian Pembelajaran Berdasar Elemen
◦ Peserta didik mampu menerapkan strategi algoritmik standar pada kehidupan
sehari-hari maupun implementasinya dalam system computer, untuk
menghasilkan beberapa solusi persoalan dengan data diskrit bervolume besar
3. Alur Tujuan Pembelajaran
◦ Memahami penerapan tentang 4 fondasi Berpikir Komputasional
◦ Menjelaskan beberapa algoritma proses pengurutan untuk dapat dimanfaatkan
dalam pengurutan dalam persoalan sehari-hari
◦ Menjelaskan strategi algoritmik untuk menemukan cara yang paling efisien
dalam proses pencarian
◦ Menjelaskan konsep struktur data tumpukan untuk dimanfaatkan dalam
persoalan sehari-hari
◦ Menjelaskan konsep struktur data antrian untuk dimanfaatkan dalam persoalan
sehari-hari
7. Pengertian berpikir komputasi
◦ Berpikir adalah aktifitas sel otak (kerja mental dan intelektual) yang melibatkan
kesadaran untuk merefleksikan realitas, sehingga mengarahkan kita pada
tindakan,ide-ide.
◦ Komputasi bisa diartikan sebagai cara untuk menemukan pemecahan masalah
dengan menggunakan suatu algoritma (teratur,logis dan menyeluruh)
◦ Berpikir Komputasi adalah sebuah kemampuan berpikir untuk menyelesaikan
suatu permasalahan secara menyeluruh, logis, dan teratur.
8. Karakteristik Berpikir Komputasi
Mampu memberikan
pemecahan masalah
menggunakan komputer atau
perangkat lain.
Mampu
mengorganisasi dan
menganalisa data
Mampu melakukan
representasi data melalui
abstraksi dengan suatu
model atau simulasi.
Mampu melakukan
otomatisasi solusi
melalui cara berpikir
algoritma.
Mampu melakukan
identifikasi, analisa dan
implementasi solusi.
Mampu
melakukan
generalisasi solusi
9. Ada 4 fondasi berpikir komputasional yang dikenal dalam ilmu Informatika,
yaitu Abstraksi, Dekomposisi, Pengenalan Pola dan Algoritma,
10. Abstraksi
◦ Abstraksi adalah salah satu cara untuk menyelesaikan masalah yang kompleks
dengan menyingkirkan hal-hal atau informasi yang tidak dibutuhkan dan hanya
fokus terhadap informasi yang benar-benar penting.Dengan abstraksi kita
mampu memformulasikan sebuah masalah yang pernah ditemui agar lebih
mudah diselesaikan dengan waktu yang lebih efisien.
11. Contoh
• Tidak perlu mencari luas masing-masing bidang
luas ABCD= s x s
Luas BDEF= p x l
12. Dekomposisi
◦ Dekomposisi ialah proses pemecahan suatu masalah kompleks menjadi masalah
yang kecil kecil agar masalah tersebut mudah dipahami,diteliti dan diselesaikan
secara terpisah. Hal ini membantu dalam pemecahan masalah yang tergolong
rumit dan mendesain suatu sistem pemecahan masalah itu sendiri.
14. ◦ Contoh, ketika kita mengembangkan sebuah game, sebuah pembuatan game
akan lebih mudah jika setiap pegawai membuat setiap level permainan itu
sendiri, daripada membuat game sekaligus. Akan lebih mudah lagi jika setiap
pegawai disuruh mengerjakan secara spesifik tentang game tersebut.
◦ Contoh Lain ialah ketika kita mempelajari struktur tubuh manusia. Akan lebih
mudah bagi kita mempelajari satu persatu organ tubuh manusia daripada
belajar anatomi tubuh manusia secara keseluruhan.
15. Pengenalan Pola
◦ pengenalan pola dalam computational thinking merupakan kemampuan untuk mengenal atau
mengetahui persamaan dan perbedaan pola, tren, keteraturan data serta suatu hal yang
nantinya bisa digunakan untuk membuat prediksi dan penyajian data
◦ Contoh
18. Algoritma
◦ adalah suatu upaya dengan urutan operasi yang disusun secara logis dan
sistematis untuk menyelesaikan suatu masalah untuk menghasilkan suatu
output tertentu
◦ Secara umum notasi algoritma terdiri dari tiga jenis, yaitu kalimat deskriptif,
pseudocode, dan flowchart.
19. Notasi dalam penulisan algoritma
02 03
01
Algoritma Luas_Segiempat
Menghitung luas segiempat dengan
memasukkan nilai lebar dan panjang
segiempat
Deklarasi
Luas, panjang, lebar : bilangan bulat
Deskripsi
Masukkan nilai lebar dan panjang
Hitung luas sama dengan panjang kali lebar
Tampilkan Luas
Notasi 2 :flowchart
Algoritma Luas_Segiempat
Menghitung luas segiempat dengan
memasukkan nilai lebar dan panjang
segiempat
Deklarasi
Luas,panjang,lebar :integer
Deskripsi
Input(n)
Luas= panjang * lebar
Output (Luas)
Notasi 3 : pseudocode
Notasi I : Deskripsi
23. Algoritma Pengurutan dan Pencarian
1. Algoritma pengurutan (Sorting)
◦ Pengurutan adalah suatu proses untuk menyusun kembali humpunan obyek
menggunakan aturan tertentu. Sorting disebut juga sebagai suatu algoritma untuk
meletakkan kumpulan elemen data kedalam urutan tertentu berdasarkan satu atau
beberapa kunci dalam tiap-tiap elemen.
◦ Metode-metode sorting yang akan saya bahas kali ini meliputi:
1. Insertion Sort (Metode Penyisipan)
2. Selection Sort (Metode Seleksi)
3. Bubble sort(Metode Gelembung)
24. Insertion Sort (Metode Penyisipan)
◦ Data dicek satu per satu mulai dari yang kedua sampai
dengan yang terakhir. Apabila ditemukan data yang lebih
kecil daripada data sebelumnya, maka data tersebut
disisipkan pada posisi yang sesuai.
26. Selection Sort (Metode Seleksi)
◦ Selection sort merupakan sebuah teknik pengurutan dengan cara
mencari nilai tertinggi / terendah di dalam array kemudian
menempatkan nilai tersebut di tempat semestinya. Algorithma ini dapat
mengurutkan data dari besar ke kecil (Ascending) dan kecil ke besar
(Descending). Algoritma ini tidak cocok untuk set data dengan jumlah
besar karena kompleksitas dari algorithma ini adalah Ο(x2) di mana n
adalah jumlah item.
28. Tugas
1. Berikan masing-masing 2 contoh penyelesaian masalah dengan cara Dekomposis,
Abstraksi dan Pengenalan Pola dalam kehidupan sehari hari !
2. Buatlah algoritma pengurutan secara ascending (dari angka terkecil ke yang
terbesar) dari data 5,11,7,3,9,2,5,13,23,20 dengan metode insertion short !
3. Buatlah algoritma pengurutan secara ascending data 17,9,12,8,10,6,13,20,11,21
dengan metode selection short
29. Bubble sort(Metode Gelembung)
◦ Bubble Sort adalah metode pengurutan algoritma dengan cara melakukan penukaran data secara terus
menerus sampai bisa dipastikan dalam suatu iterasi tertentu tidak ada lagi perubahan/penukaran.
Algoritma ini menggunakan perbandingan dalam operasi antar elemennya.
◦ Berikut ini adalah gambaran dari algoritma bubble sort:
1.Bandingkan nilai data ke-1 dan data ke-2
2.Jika data ke-1 lebih besar dari data ke-2 maka tukar posisinya
3.Kemudian data yg lebih besar tadi dibandingkan dengan data ke-3
4.Lakukan langkah nomer 2 hingga selesai.
31. 2. Algoritma Pencarian (Search)
◦ Algoritma Searching adalah tahapan sistematis yang digunakan pada
program untuk menelusuri suatu data yang dicari. Algoritma ini akan
menerima sebuah argumen atau kata kunci yang akan dicari.
Kemudian algoritma akan menjalankan langkah langkah tertentu untuk
mendapatkan hasil berdasarkan kata kunci. Setelah proses pencarian
selesai, maka akan diperoleh hasil dari salah satu dua kemungkinan,
yaitu data yang dicari berdasarkan kata kunci telah ditemukan atau
data tidak dapat ditemukan.
◦ Algoritma Pencarian umumnya terdiri dari 2 macam yaitu Sequential
Search dan Binary Search.
32. Sequential Search
◦ Algoritma pencarian Sekuensial adalah salah satu algoritma pencarian data yang
biasa digunakan untuk data yang berpola acak atau belum terurut. Algoritma ini akan
mencari data sesuai kata kunci yang diberikan mulai dari elemen awal pada array
hingga elemen akhir array.
◦ Konsep Pencarian Sekuensial:
1. Membandingkan setiap elemen pada array satu per satu secara berurut
2. Proses pencarian dimulai dari indeks pertama hingga indeks terakhir
3. Proses pencarian akan berhenti apabila data ditemukan. Jika hingga akhir array data masih
juga tidak ditemukan, maka proses pencarian tetap akan dihentikan
4. Proses perulangan pada pencarian akan terjadi sebanyak jumlah N elemen pada array
34. Binary Search.
◦ Algoritma binary search adalah salah satu algoritma pencarian data
yang biasa digunakan untuk array yang berpola terurut. Teknik
pencarian yang digunakan pada algoritma ini adalah dengan cara
berulang kali membagi jumlah data menjadi dua bagian sehingga
memperkecil lokasi pencarian suatu data hingga pada akhirnya dapat
ditemukan
35. ◦ Konsep Binary Search:
1. Data diambil dari posisi 1 sampai posisi akhir N
2. Kemudian data akan dibagi menjadi dua untuk mendapatkan posisi data tengah
3. Selanjutnya data yang dicari akan dibandingkan dengan data yang berada di posisi tengah, apakah
lebih besar atau lebih kecil.
4. Apabila data yang dicari lebih besar dari data tengah, maka dapat dipastikan bahwa data yang
dicari kemungkinan berada di sebelah kanan dari data tengah. Proses pencarian selanjutnya akan
dilakukan pembagian data menjadi dua bagian pada bagian kanan dengan acuan posisi data
tengah akan menjadi posisi awal untuk pembagian tersebut.
5. Apabila data yang dicari lebih kecil dari data tengah, maka dapat dipastikan bahwa data yang dicari
kemungkinan berada di sebelah kiri dari data tengah. Proses pencarian selanjutnya akan dilakukan
pembagian data menjadi dua bagian pada bagian kiri. Dengan acuan posisi data tengah akan
menjadi posisi akhir untuk pembagian selanjutnya.
6. Apabila data belum ditemukan, maka pencarian akan dilanjutkan dengan kembali membagi data
menjadi dua
7. Namun apabila data bernilai sama, maka data yang dicari langsung ditemukan dan pencarian
dihentikan
37. SIKAP YANG MENDUKUNG BERPIKIR KOMPUASIONAL
1. Percaya diri dalam menghadapi permasalahan kompleks
2. Kegigihan bekerja dalam menghadapi permasalahan sulit dan rumit
3. Toleransi terhadap perbedaan
4. Kemampuan untuk menyelesaikan masalah secara terbuka
5. Kemampuan untuk berkomunikasi dengan orang lain dalam mencapai tujuan atau mendapatkan solusi
permasalahan.
38. Kesimpulan
1. Informatika dilandasi oleh landasan berpikir yang
dinamakan berpikir komputasional (Computational
Thinking).
2. Berpikir Komputasi adalah sebuah kemampuan berpikir
untuk menyelesaikan suatu permasalahan secara
menyeluruh, logis, dan teratur.
3. Ada 4 fondasi berpikir komputasional yang dikenal dalam
ilmu Informatika, yaitu Abstraksi, Dekomposisi, Pengenalan
Pola dan Algoritma,
39. Tugas
1. Berikan masing-masing 2 contoh penyelesaian masalah dengan cara Dekomposis,
Abstraksi dan Pengenalan Pola dalam kehidupan sehari hari !
2. Buatlah algoritma pengurutan secara ascending dari data 5,11,7,3,9,2,5 dengan
metode insertion short !
3. Buatlah algoritma pengurutan secara ascending data 17,9,11,12,8,10,6 dengan
metode selection short