Prinsip Pemikiran Komputasional

Prinsip Pemikiran Komputasional
1. Decomposition (Penguraian)
Sebelum komputer dapat memecahkan masalah, masalah dan cara penyelesaiannya harus dipahami. Penguraian membantu dengan memecah masalah kompleks menjadi bagian-bagian yang lebih mudah dikelola.

Apa itu Penguraian?
Penguraian adalah salah satu dari empat landasan berpikir komputasional. Ini melibatkan pemecahan masalah atau sistem yang kompleks menjadi bagian-bagian yang lebih kecil yang lebih mudah dikelola dan lebih mudah dipahami. Bagian-bagian yang lebih kecil kemudian dapat diperiksa dan dipecahkan, atau dirancang secara individual, karena lebih mudah untuk dikerjakan.

Sebelum komputer dapat memecahkan masalah, masalah dan cara penyelesaiannya harus dipahami. Penguraian membantu dengan memecah masalah kompleks menjadi bagian-bagian yang lebih mudah dikelola.

Contoh:
Bayangkan kalian ingin membuat laporan praktikum pertama. Ini adalah masalah yang kompleks. Ada banyak hal yang perlu dipertimbangkan.

Bagaimana kalian menguraikan tugas membuat laporan praktikum? Untuk menguraikan tugas ini, kalian perlu mengetahui jawaban untuk serangkaian masalah yang lebih kecil, seperti:
▪ Laporan seperti apa yang ingin kalian buat
▪ Bagaimana format penulisan yang sesuai dengan ketentuan sekolah
▪ Mata pelajaran apa yang kalian pelajari
▪ Siapa guru pengampu materi pelajaran kalian
▪ Kapan dan dimana kalian belajar
▪ Apakah laporan tersebut ditulis tangan atau diketik menggunakan aplikasi komputer
▪ Alat dan bahan apa yang kalian gunakan
▪ Kepada siapa kalian melaporkan laporan praktikum
▪ Apakah kalian sudah mempersiapkan dokumentasi pekerjaan selama praktikum
▪ Apakah dokumentasi berupa gambar, suara atau video
▪ Apakah laporan tersebut dikerjakan sendiri atau berkelompok
▪ Kapan laporan tersebut harus diselesaikan
▪ Siapa yang mengesahkan laporan tersebut
▪ Kapan laporan tersebut dipresentasikan
▪ Dimana laporan tersebut dipresentasikan
▪ Kepada siapa laporan tersebut dikumpulkan

Daftar ini telah memecah masalah kompleks dalam membuat laporan praktikum menjadi masalah yang lebih sederhana yang sekarang dapat diselesaikan. Kalian juga dapat meminta orang lain untuk membantu membuat bagian laporan yang berbedabeda. Misalnya, kalian mungkin memiliki teman yang dapat membuat pendahuluan, sementara yang lain akan menjadi memeriksa tata bahasa kalian.

2. Pattern Recognition (Pengenalan Pola)
Setelah kalian menguraikan masalah yang kompleks, ada baiknya untuk memeriksa masalah kecil untuk kesamaan atau ‘pola’. Pola-pola ini dapat membantu kalian memecahkan masalah yang kompleks dengan lebih efisien.

Apa itu Pengenalan Pola? Ketika kalian menguraikan masalah yang kompleks, kalian sering menemukan pola di antara masalah yang lebih kecil yang kita buat. Pola adalah kesamaan atau karakteristik yang dimiliki oleh beberapa masalah.

Pengenalan pola adalah salah satu dari empat landasan berpikir komputasional.
Mengenal pola artinya menemukan kesamaan atau pola di antara masalah kecil yang terurai yang dapat membantu kita memecahkan masalah yang lebih kompleks dengan lebih efisien.

Apa itu pola? Bayangkan kalian ingin menggambar serangkaian mobil. Semua mobil memiliki karakteristik yang sama. Antara lain memiliki warna, roda dan bentuk.

Mobil juga membutuhkan bahan bakar dan mengeluarkan suara bising. Karena kita tahu bahwa semua mobil memiliki warna, roda, dan bentuk, kalian dapat mencoba menggambar mobil dengan baik, cukup dengan menyertakan ciri-ciri umum ini.

Dalam pemikiran komputasi, karakteristik ini dikenal sebagai pola. Setelah kita tahu bagaimana mendeskripsikan sebuah mobil, kita dapat mendeskripsikan mobil lainnya, cukup dengan mengikuti pola ini.

Yang membedakan hanyalah spesifikasinya:
▪ Sebuah mobil mungkin memiliki warna hijau, roda 4 dan bentuk kotak
▪ Mobil lain mungkin memiliki warna kuning, roda 3 dan bentuk oval memanjang
Contoh lain, ketika kalian akan menyelesaikan persamaan ke-4 dari sekumpulan persamaan di bawah ini:

Sebelum mengerjakan persamaan yang ke-4, perhatikan urutannya dan kemudian dengan pola yang sama kalian cari nilainya 87 + 11 = ?. Kalian mempunyai 4 persamaan yang secara umum dapat dituliskan a + b = c.
Untuk mendapatkan pola yang akan digunakan untuk menyelesaiakan persamaan ke-4, coba kalian cermati persamaan ke-1, persamaan ke-2, dan persamaan ke-3. Hasil mencermati ketiga persamaan bahwa pola yang berlaku untuk ketiga persamaan yang telah kalian cermati adalah:

Coba kalian periksa apakah pola tersebut sudah benar?
1 x (4 + 1) = 5
5 x (5 + 1) = 30
10 x (4 + 1) = 50
Berdasar pada pola yang berlaku pada ketiga persamaan sebelumnya, maka pola ini dapat kalian pakai untuk menyelesaikan persamaan yang ke-4, yaitu:

Agar kalian lebih memahami pengenalan pola dalam berpikir komputasional, cermati kedua blok bilangan di bawah dan angka berapa yang tepat untuk menggantikan X pada blok ke-2 ? Blok pertama kalian gunakan untuk mendapatkan pola, kemudian pola yang kalian temukan digunakan untuk mendapatkan nilai X pada blok kedua.


Coba kalian selesaikan blok pertama dengan cara mengasumsikan a=22; b=45; c=60; d=58; e=69, ternyata setelah dicermati pola yang berlaku pada blok pertama adalah a + b + c = d + e yang berarti 22 + 45 + 60 = 58 + 69 sehingga kalau kalian selesaiakan hasilnya = 127. Perhatikan penjelasan berikut!


Baris Pertama (a, b, c) : 22 + 45 + 60 = 127
Baris Kedua (d, e) : 58 + 69 = 127
Maka didapat pola : a + b + c = d + e
Pola pada blok pertama tersebut bisa kalian gunakan untuk mendapatkan nilai X, jika kalian sudah mencoba dan benar maka berapakah nilai X = ... ?
Ya, kalian benar. Nilai X adalah 94.

Coba kalian dapatkan angka yang dapat menggantikan W, dari kumpulan bilangan di bawah ini:
Mengapa kita perlu mencari pola? Menemukan pola sangat penting. Pola membuat tugas kita lebih sederhana. Masalah lebih mudah dipecahkan ketika kalian memiliki berbagi pola, karena kalian dapat menggunakan solusi pemecahan masalah yang sama dengan menggunakan pola yang sudah ada. Pertanyaan yang harus kalian renungkan adalah “apakah kalian dapat memecahkan contoh-contoh persamaan di atas tanpa menemukan polanya terlebih dahulu?” Semakin banyak pola yang dapat kalian temukan, semakin mudah dan cepat dalam menyelesaikan tugas atau masalah kalian.
Apa yang terjadi jika kita tidak mencari pola? Misalkan kalian tidak mencari pola pada mobil atau kalian tidak mencari pola pada penyelesaian persamaan. Maka dipastikan setiap kalian akan menggambar mobil, kalian akan berhenti sejenak dan bertanya seperti apa mobil itu? Demikian juga dalam penyelesaian masalah persamaan, pasti kalian akan kebingungan dan hal ini sangat tidak efisien atau cara yang buruk untuk menyelesaikan masalah di samping memperlambat kalian.

Selain itu, jika kalian tidak mencari pola, kalian mungkin tidak menyadari bahwa semua mobil memiliki warna, roda, dan bentuk. Maka saat kalian menggambar mobil mungkin tidak terlihat seperti mobil. Dalam hal ini karena tidak mengenali polanya, kalian akan menyelesaikan masalah dengan tidak benar.

Mengenali pola
Untuk menemukan pola dalam masalah kalian mencari hal-hal yang sama (atau sangat mirip) di setiap masalah. Mungkin saja ternyata tidak ada karakteristik umum yang ada di antara masalah, tetapi kita tetap harus melihat. Pola ada di antara masalah yang berbeda dan dalam masalah individu. Kalian perlu mencari di keduanya.

Pola di antara masalah yang berbeda
Untuk menemukan pola di antara masalah, kalian mencari hal-hal yang sama (atau sangat mirip) untuk setiap masalah.

Misalnya, menguraikan tugas membuat kue akan menyoroti perlunya kita mengetahui solusi untuk serangkaian masalah yang lebih kecil:
▪ Kue apa yang ingin kalian buat?
▪ Bahan apa yang kalian butuhkan dan berapa banyak masing-masing ?
▪ Berapa banyak orang yang ingin kalian buatkan kuenya?
▪ Peralatan apa yang kita butuhkan?
Setelah kalian mengetahui cara membuat satu jenis kue tertentu, kalian dapat melihat bahwa membuat kue jenis lain tidak jauh berbeda karena ada polanya.

Sebagai contoh:
▪ Setiap kue akan membutuhkan jumlah bahan tertentu yang tepat
▪ Setiap kue akan dipanggang untuk jangka waktu tertentu
Setelah kita memiliki pola yang diidentifikasi, kita dapat bekerja pada solusi umum antara masalah.

Pola dalam masalah
Pola mungkin juga ada dalam masalah yang lebih kecil yang telah kita uraikan. Jika kalian melihat membuat kue, kalian juga dapat menemukan pola dalam masalah yang lebih kecil. Misalnya, untuk “setiap kue akan membutuhkan jumlah bahan tertentu yang tepat”, setiap bahan dalam pembuatan kue membutuhkan:
▪ Mengidentifikasi (merinci bahan-bahan yang akan digunakan)
▪ Pengukuran tertentu (menimbang, menghitung, ...)
Setelah kalian tahu bagaimana mengidentifikasi setiap bahan dan jumlahnya, kalian bisa menerapkan pola itu ke semua bahan. Sekali lagi, semua yang berubah adalah hanya spesifikasinya.

3. Abstraction (Abstraksi)
Setelah kalian mengenali pola dalam masalah, kalian menggunakan abstraksi untuk mengumpulkan karakteristik umum dan menyaring detail yang tidak kalian perlukan untuk menyelesaikan masalah.
Apa itu abstraksi? Abstraksi adalah salah satu dari empat landasan berpikir komputasional. Ini melibatkan penyaringan atau pemilihan, mengabaikan karakteristik yang tidak kalian perlukan untuk berkonsentrasi pada karakteristik yang kalian lakukan.

Dalam pemikiran komputasi, ketika kalian menguraikan masalah, kemudian mencari pola di antara dan di dalam masalah yang lebih kecil agar masalah menjadi lebih sederhana.

Abstraksi adalah proses menyaring, mengabaikan, serta karakteristik pola yang tidak kalian perlukan untuk berkonsentrasi pada pola yang kalian lakukan. Ini juga merupakan penyaringan dari detail spesifik. Dari sini kalian membuat representasi (gagasan) dari apa yang kalian coba pecahkan.

Apa detail atau karakteristik spesifik itu? Dalam pengenalan pola, kalian melihat masalah karena harus menggambar serangkaian mobil. Kalian mencatat bahwa semua mobil memiliki karakteristik umum, misalnya warna, roda, bentuk, menggunakan bahan bakar bensin dan kemampuan mengeluarkan suara bising. Selain itu, setiap mobil memiliki ciri khas tertentu, seperti warna hitam, roda 4, bentuk kotak, menggunakan bahan bakar bensin, dan mengeluarkan suara bising. Detail ini dikenal sebagai spesifik.
Untuk menggambar mobil secara dasar, kalian perlu tahu bahwa mobil itu memiliki warna, roda, dan bentuk, karakteristik ini relevan. Kalian tidak perlu tahu suara apa yang dibuat mobil atau menggunakan bahan bakar apa, karakteristik ini tidak relevan dan dapat disaring. Kalian memang perlu tahu bahwa mobil memiliki warna, roda dan bentuk, tapi kalian tidak perlu tahu ukuran dan jenisnya. Spesifik ini dapat disaring.

Dari ciri-ciri umum yang kalian miliki (warna, roda dan bentuk) kalian dapat membangun ide dasar tentang mobil, yaitu seperti apa mobil itu pada dasarnya. Setelah kalian tahu seperti apa mobil itu, kalian bisa menjelaskan cara menggambar mobil dasar.

Mengapa abstraksi itu penting? Abstraksi memungkinkan kalian untuk membuat gagasan umum tentang apa masalahnya dan bagaimana menyelesaikannya. Proses tersebut menginstruksikan kalian untuk menghapus semua detail spesifik, dan pola apa pun yang tidak akan membantu kalian memecahkan masalah. Ini membantu kalian membentuk ide tentang masalah. Ide ini dikenal sebagai ‘model’.

Jika kalian tidak mengabstraksi, kalian mungkin berakhir dengan solusi yang salah untuk masalah yang kalian coba pecahkan. Dengan contoh mobil, jika kalian tidak mengabstraksi, mungkin berpikir bahwa semua mobil memiliki roda 4 dan menggunakan bahan bakar bensin. Setelah diabstraksi, kalian tahu bahwa meskipun mobil memiliki roda 4 dan menggunakan bahan bakar bensin, tidak semua roda 4 dan tidak semua menggunakan bahan bakar bensin. Dalam hal ini, abstraksi telah membantu kita untuk membentuk model mobil yang lebih jelas.

Bagaimana mengabstraksi? Abstraksi adalah pengumpulan karakteristik umum yang kita butuhkan dan penyaringan detail dan karakteristik yang tidak kita butuhkan.
Saat membuat kue, ada beberapa karakteristik umum di antara kue. Sebagai contoh:
▪ Kue membutuhkan bahan
▪ Setiap bahan membutuhkan jumlah tertentu
▪ Membuat kue membutuhkan waktu

Saat mengabstraksi, kalian menghapus detail spesifik dan mempertahankan pola umum yang relevan.

Membuat model
Model adalah ide umum dari masalah yang kita coba pecahkan. Misalnya, model mobil adalah mobil secara umum, bukan mobil khusus dengan roda 4 dan menggunakan bahan bakar bensin. Modelnya mewakili semua mobil. Dari model mobil kalian dapat mempelajari seperti apa mobil itu dengan menggunakan pola yang dimiliki semua mobil.

Demikian pula saat membuat kue, model kue tidak akan menjadi kue tertentu, seperti kue bolu atau kue buah. Sebaliknya, model akan mewakili semua kue. Dari model ini kita bisa belajar cara membuat kue apa saja, menggunakan pola yang berlaku untuk semua kue. Setelah kalian memiliki model masalah, kalian kemudian dapat merancang algoritma untuk menyelesaikannya.

4. Algorithm Design (Desain Algoritma)
Algoritma merupakan salah satu dari empat landasan berpikir komputasional. Algoritma adalah rencana, seperangkat instruksi langkah demi langkah untuk memecahkan masalah. Jika kalian dapat mengikat tali sepatu, membuat secangkir teh, berpakaian, atau menyiapkan makanan, maka kalian sudah tahu cara mengikuti suatu algoritma.

Dalam suatu algoritma, setiap instruksi diidentifikasi dan urutan pelaksanaannya direncanakan. Algoritma sering digunakan sebagai titik awal untuk membuat program komputer, dan terkadang ditulis sebagai diagram alur atau dalam kode semu (Pseudocode).

Jika ingin memberitahu komputer untuk melakukan sesuatu, kalian harus menulis program komputer yang akan memberitahu komputer, langkah demi langkah, persis apa yang kalian ingin lakukan dan bagaimana melakukannya. Program langkah demi langkah ini akan membutuhkan perencanaan, dan untuk melakukan ini kalian menggunakan algoritma.

Komputer hanya sebagus algoritma yang diberikan. Jika kalian memberi komputer algoritma yang buruk, kalian akan mendapatkan hasil yang buruk juga, oleh karena itu berlaku frasa: ‘Sampah masuk, sampah keluar.’

Algoritma digunakan untuk banyak hal yang berbeda termasuk perhitungan, pemrosesan data, dan otomatisasi.

Membuat rencana
Penting untuk merencanakan solusi untuk suatu masalah untuk memastikan bahwa itu akan benar. Menggunakan pemikiran komputasi dan penguraian, kita dapat memecah masalah menjadi bagian-bagian yang lebih kecil dan kemudian kita dapat merencanakan bagaimana mereka cocok kembali dalam urutan yang sesuai untuk memecahkan masalah.

Urutan ini dapat direpresentasikan sebagai algoritma. Sebuah algoritma harus jelas, harus memiliki titik awal, titik akhir dan serangkaian instruksi yang jelas.

Algoritma dengan Pseudocode
Ada dua cara utama untuk merepresentasikan algoritma – pseudocode dan flowchart. 
Sebagian besar program dikembangkan menggunakan bahasa pemrograman. Bahasabahasa tersebut memiliki sintaks (aturan yang digunakan untuk menulis agar dimengerti oleh bahasa pemrograman) khusus yang harus digunakan agar program dapat berjalan dengan baik.

Pseudocode bukan bahasa pemrograman, ini adalah cara sederhana untuk menggambarkan serangkaian instruksi yang tidak harus menggunakan sintaks tertentu.

Menulis dalam pseudocode mirip dengan menulis dalam bahasa pemrograman. Setiap langkah dari algoritma ditulis pada barisnya sendiri secara berurutan. Biasanya, instruksi ditulis dalam huruf besar, variabel dalam huruf kecil dan pesan dalam huruf besar.

Sebuah program sederhana dapat dibuat untuk menanyakan nama dan usia seseorang, dan membuat komentar berdasarkan ini. Program ini diwakili dalam Pseudocode akan terlihat seperti ini:


Algoritma dengan Flowchart
Flowchart adalah diagram yang mewakili sekumpulan instruksi. Flowchart biasanya menggunakan simbol standar untuk mewakili instruksi yang berbeda. Ada beberapa aturan nyata tentang tingkat detail yang dibutuhkan dalam diagram alir. Terkadang diagram alir dipecah menjadi banyak langkah untuk memberikan banyak detail tentang apa yang sebenarnya terjadi. Terkadang mereka disederhanakan sehingga sejumlah langkah terjadi hanya dalam satu langkah.

Flowchart simbol





5. Contoh
Masalah dapat diselesaikan dengan menggunakan algoritmik standar dalam berpikir komputasional. Ada beberapa literatur yang menambahkan dengan langkah literation atau tambahan langkah lain, tetapi untuk saat ini kalian gunakan 4 langkah (Penguraian, Pengenalan Pola, Abstraksi, Desain Algoritma).
a. Penerapan algoritmik standar pada implementasi dalam program
Komputer
1) Kalian akan menyelesaikan konversi bilangan heksadesimal AF9C ke dalam bilangan biner.
Solusi:
a) Penguraian
Pada penguraian kalian dapat menyederhanakan masalah dengan memecah AF9C kedalam masing-masing digit sehingga:

Dari masalah bilangan heksadesimal 4 digit, kalian telah menguraiakan menjadi masing-masing digit, artinya kalian sudah mencoba memecahkan masalah yang besar dan komplek menjadi sub-masalah yang lebih kecil-kecil dan lebih sederhana. Dalam menyelesaikan masalah setiap digit digunakan algoritma yang sesuai atau mungkin saja algoritma yang digunakan sama setiap digitnya.
b) Pengenalan Pola
Ada beberapa cara untuk menyelesaikan bilangan heksadesimal 1 digit ke dalam bilangan biner yang selanjutnya kita sebut pola, misalnya:
• Mengkonversi bilangan heksadesimal menjadi bilangan desimal kemudian dari bilangan desimal dikonversi menjadi bilangan biner.
• Mengkonversi setiap digit heksadesimal kedalam 4 digit biner seperti tabel yang telah dibuat sebelumnya, yaitu




Untuk mendapatkan pola, kalian dapat mencari dan mengumpulkan atau mengoleksi cara-cara penyelesaian masalah yang serupa. Mungkin saja kalian memodifikasi pola yang sudah ada dengan cara kalian sendiri, sehingga dapat lebih mudah atau lebih cepat digunakan memecahkan masalah yang hadapi.

c) Abstraksi
Setelah menguraikan masalah dan mendapatkan pola-pola pemecahan masalah yang sesuai, bagaimana kalian mengabstraksikan masalah yang akan kalian pecahkan?
Salah satu abstraksinya dapat dituliskan:
Inilah fokus pemecahan masalah yang akan kalian kerjakan.
Dari uraian di atas, secara grafis kalian telah menyelesaikan:

Sebelum kalian membuat algoritma untuk menyelesaikan masalah secara keseluruhan, hasil konversi bilangan heksadesimal AF9C dapat kalian lakukan sebagai berikut:
• Konversi setiap digit bilangan heksadesimal
– Digit pertama C bilangan biner yang sesuai adalah 1100
– Digit kedua 9 bilangan biner yang sesuai adalah 1001
– Digit ketiga F bilangan biner yang sesuai adalah 1111
– Digit keempat A bilangan biner yang sesuai adalah 1010
• Setiap bilangan terletak dalam tempat tertentu dari kiri kekanan, sehingga kalian tidak boleh menempatkan hasil konversi bilangan biner secara sembarangan harus sesuai dengan digit bilangan heksadesimal yang kalian konversi. Jadi hasil konversi secara keseluruhan bilangan heksadesimal
AF9C = 1010 1111 1001 1100
Agar masalah ini dapat diselesaikan dengan menggunakan komputer, maka kalian harus membuat algoritma.

d) Algoritma Pseudocode

Algoritma di atas dapat menyelesaikan bilangan heksadesimal AF9C, selain bilangan tersebut komputer tidak dapat menyelesaikannya.

2) Hitunglah jumlah semua bilangan antara 1 dan 750!
Solusi:
Masalah yang akan kalian pecahkan adalah menghitung jumlah semua bilangan antara 1 dan 750. Apakah kalian akan mendapatkan jumlah semua bilangan dengan cara:
1 + 2 = 3
3 + 4 = 7
5 + 6 = 11
7 + 8 = 15
… + … dan seterusnya? Tentu tidak, kalian pasti akan berpikir komputasional dengan menggunakan 4 langkah berikut ini.

a) Penguraian
Kalian mencoba menghitung jumlah semua bilangan mulai dari yang kecil, misalnya antara 1 dan 4, kemudian antara 1 dan 6, artinya untuk menyelesaikan masalah yang besar kita uraikan menjadi sub masalah yang lebih kecil.
• 1 + 2 + 3 + 4 = 10
atau
4 + 1 = 5
3 + 2 = 5
hasilnya 5 + 5 = 10
• 1 + 2 + 3 + 4 + 5 + 6 = 21
atau
6 + 1 = 7
5 + 2 = 7
4 + 3 = 7
hasilnya 7 + 7 + 7 = 21
b) Pengenalan Pola
Hasil penguraian di atas ciri-ciri atau hal-hal apa yang secara umum dapat kalian ambil? Misalnya, adakah persamaan pola penjumlahan yang kalian dapat? Untuk menghitung semua bilangan antara 1 dan 4 dapat diselesaikan dengan 2 pasang penjumlahan atau sama dengan 4/2 dan setiap pasang
penjumlahan menghasilkan nilai yang sama, yaitu 5 atau 4 + 1.

Demikian juga untuk menghitung semua bilangan antara 1 dan 6 diselesaikan dengan 3 pasang penjumlahan atau 6/2 dan setiap pasang penjumlahan menghasilkan nilai yang sama yaitu 7 atau 6 + 1.
Hasil kedua percobaan penjumlahan di atas didapatkan bahwa pola yang digunakan adalah bilangan terakhir ditambah 1 dikalikan dengan bilangan terakhir dibagi 2.

• (4 + 1) x (4/2) = 10
• (6 + 1) x (6/2) = 21
Pola ini dapat kalian gunakan untuk menghitung jumlah semua bilangan antara 1 dan 750. Kalau kalian menghitung tanpa menggunakan pola, kalian akan melakukan hitungan penjumlahan pada 375 pasangan penjumlahan dan jika menggunakan pola kalian akan mendapatkan hasil yang lebih mudah,
cepat, dan efisien yaitu,

Bagaimana jika kalian diminta untuk menghitung jumlah bilangan antara 1 dan 110.000 ? Dengan cepat kalian gunakan pola yang sama yaitu (110.000 + 1) x (110.000/2) = 6.050.055.000.

c) Abstraksi
Untuk menyelesaikan masalah menghitung jumlah bilangan antara 1 dan 750, fokus pada satu pasangan penjumlahan yaitu pasangan penjumlahan 750 + 1 dan jumlah pasangan yaitu 750/2 kemudian dikalikan → (750+1) x (750/2).

d) Algoritma
Masalah menghitung jumlah bilangan antara 1 dan 750, langkah-langkah penyelesaiannya dapat kalian tuliskan sebagai berikut:
(750+1) x (750/2) = 281.625
• Menambahkan bilangan terakhir dengan 1 → 750 + 1 = 751
• Membagi bilangan terakhir dengan 2 → 750/2 = 375
• Mengalikan bilangan 751 dengan bilangan 375 → 751 x 375 = 281.625

b. Penerapan algoritmik standar pada kehidupan sehari-hari
Setiap hari kalian menjalani rutinitas yang sama, yaitu belajar di sekolah. Sebelum ke sekolah kalian harus mempersiapkan beberapa hal, antara lain mandi, sarapan, memeriksa buku pelajaran yang harus dibawa, memeriksa tugas yang harus dikumpulkan, datang ke sekolah tepat waktu, mengikuti pelajaran yang diberikan guru, mengerjakan tugas yang diberikan guru, bersosialisasi dengan teman sebaya
di sekolah, pulang ketika jam pelajaran telah usai.

Masalah yang sering timbul bagi pelajar adalah kelupaan mengerjakan tugas rumah yang diberikan oleh guru dan lupa membawa buku pelajaran sesuai jadwal yang telah ditentukan oleh sekolah.

Untuk menyelesaikan masalah di atas, hal-hal yang harus kalian lakukan adalah:
1) Penguraian
Pada penguraian kalian dapat menyederhanakan masalah dengan memecah rutinitas diatas menjadi beberapa kelompok:
• Persiapan sebelum berangkat sekolah
– Mandi pagi
– Beribadah subuh atau berdoa sesuai kepercayaan masing-masing
– Sarapan pagi

• Memeriksa jadwal pelajaran dan tugas sekolah
– Memerika buku pelajaran yang diperlukan
– Memeriksa tugas sekolah yang harus dikumpulkan
– Mempelajari kembali materi yang pernah diajarkan oleh guru

• Proses belajar di sekolah
– Hadir lebih awal di sekolah
– Mengikuti pelajaran sesuai dengan jadwal ruang kelas yang telah dibagikan
– Memperhatikan informasi yang diberikan oleh guru
– Mengerjakan tugas-tugas yang diberikan oleh guru
– Bersosialisasi dengan teman di sekolaah
– Pulang ke rumah ketika jam pelajaran telah selesai

Dari rutinitas di atas, kalian telah menguraikan menjadi beberapa kelompok, artinya kalian telah berusaha memecahkan masalah yang besar menjadi sub masalah yang lebih kecil dan lebih sederhana. Dalam menyelesaikan masalah, setiap sub masalah dapat diperiksa dengan seksama
menggunakan algoritma yang sesuai.
2) Pengenalan Pola
Ada beberapa cara untuk menyelesaikan masalah yang kalian hadapi yang selanjutnya kita sebut pola, misalnya:
a) Menempatkan setiap buku pelajaran pada tempat yang telah disiapkan
b) Membuat catatan pekerjaan yang harus dikerjakan skala prioritas
c) Membuat daftar pekerjaan yang sudah dan yang belum diselesaikan
d) Membuat jadwal pekerjaan agar tugas sekolah dapat diselesaikan tepat waktu
Untuk mendapatkan pola, kalian dapat mencari dan mengumpulkan atau mengoleksi cara-cara penyelesaian masalah yang serupa. Mungkin saja kalian memodifikasi pola yang sudah ada dengan cara kalian sendiri, sehingga dapat lebih mudah atau lebih cepat digunakan memecahkan masalah yang kalian hadapi.

3) Abstraksi
Setelah menguraikan masalah dan mendapatkan pola-pola pemecahan masalah yang sesuai, bagaimana kalian mengabstraksikan masalah yang akan kalian pecahkan?

Salah satu abstraksinya dapat dituliskan:

Inilah fokus pemecahan masalah yang akan kalian kerjakan.
4) Algoritma Pseudocode
Masalah pekerjaan rumah dan jadwal pelajaran dapat diselesaikan dengan langkah-langkah berikut:
a) Membuat daftar pekerjaan
b) Memeriksa pekerjaan
• Apakah ada pekerjaan rumah (PR)? Jika ada, segera kerjakan dengan bantuan buku paket/internet atau berdiskusi kelompok dengan teman sekelas.
• Apakah pekerjaan rumah (PR) sudah selesai? Jika sudah, beri tanda pada daftar pekerjaan.
c) Memeriksa buku pelajaran yang akan dibawa ke sekolah
• Apakah buku pelajaran, alat tulis dan buku tulis sudah disiapkan untuk pelajaran esok pagi? Jika sudah, beri tanda pada daftar pekerjaan.
• Apakah sudah mempelajari materi pelajaran yang sebelumnya sudah diajarkan oleh guru? Jika sudah, beri tanda pada daftar pekerjaan.



Previous Post Next Post