Apa yang dimaksud dengan Desain Algoritma dalam Computational Thinking?

Algoritma merupakan langkah-langkah (prosedur) yang harus dilakukan untuk menyelesaikan sebuah masalah.

Apa yang dimaksud dengan Desain Algoritma dalam Computational Thinking?

Computational Thinking atau yang bisa disebut Pemikiran Komputasi adalah proses pemecahan masalah yang mencakup sejumlah karakteristik dan disposisi. Computational Thinking sangat penting untuk pengembangan sebuah aplikasi komputer, namun juga dapat digunakan untuk mendukung pemecahan masalah di setiap ilmu, termasuk humaniora, matematika, dan juga sains. Salah satu elemen dari Computational Thinking ialah Algorithm Design, atau yang bisa disebut pemikiran algoritmik.

Algorithm Design adalah metode khusus untuk menciptakan proses matematis dalam proses pemecahan masalah. Algorithm Design diidentifikasi dan dimasukkan ke dalam banyak teori solusi penelitian operasi, seperti halnya pemrograman dinamis. Teknik untuk merancang dan menerapkan desain algoritmik adalah pola perancangan algoritma, seperti pola pola template dan pola dekorator, serta penggunaan struktur data. Beberapa penggunaan algoritma saat ini dapat ditemukan dalam proses pencarian internet seperti web crawling, packet routing dan caching.

Analisis algoritma dilakukan dengan tujuan utama agar kita dapat mengambil keputusan yang tepat dalam memilih algoritma untuk mencari dan menentukan sebuah solusi. Sebagai contoh, kita semua belajar algoritma untuk melakukan perkalian di sekolah. Jika kita mengikuti aturan dan langkah-langkah yang diajarkan, justru kita bisa mendapatkan jawaban atas masalah perkalian. Begitu kita memiliki dasar pemikiran algoritma kita tidak perlu memikirkan bagaimana melakukan perkalian dari nol setiap kali kita dihadapkan dengan masalah baru.

Sebagai salah satu dasar dari ilmu komputer, algoritma merupakan hal yang sangat penting untuk dikuasai oleh orang-orang, dari peneliti sampai ke praktisi, hingga mungkin perlu dipelajari oleh orang-orang awam di dunia ilmu komputer. Tentunya penguasaan akan algoritma tidak cukup hanya sampai pada tahap mengetahui dan menggunakan algoritma yang tepat untuk menyelesaikan masalah. Seorang yang mengerti ilmu komputer harus juga mampu merancang dan mengembangkan sebuah algoritma berdasarkan masalah-masalah yang ditemui. Ada baiknya kita mempelajari secara mendasar mengenai perancangan (desain) dan pengembangan algoritma, agar kita dapat tidak hanya menggunakan algoritma yang sudah ada, tetapi juga merancang dan mengembangkan algoritma sesuai dengan masalah yang akan diselesaikan.

Dalam mendefinisikan analisis algoritma, kita harus dapat mendefinisikan tiga hal utama dengan jelas, yaitu:

  1. Masalah, yaitu sebuah permasalahan yang ingin diselesaikan oleh sebuah algoritma.
  2. Masukan, yaitu contoh data atau keadaan yang disaring, yang dapat menjadi variabel-variabel untuk menemukan jalan keluar dari sebuah permasalahan…
  3. Keluaran, yaitu bentuk akhir dari data atau keadaan setelah algoritma diimplementasikan ke masukan. Keluaran merupakan hasil ideal yang diinginkan dan dianggap telah menyelesaikan masalah atau menemukan solusi yang tepat.

Salah satu aspek terpenting dari perancangan algoritma adalah membuat algoritma yang berjalan dengan efisien. Langkah-langkah dalam pemikiran algoritmik, yaitu:

  1. Definisi Masalah
  2. Pengembangan model
  3. Spesifikasi Algoritma
  4. Merancang sebuah Algoritma
  5. Memeriksa kebenaran Algoritma
  6. Analisis Algoritma
  7. Implementasi Algoritma
  8. Pengujian program
  9. Persiapan Dokumentasi

Kekuatan pemikiran algoritmik adalah memungkinkan solusi otomatis. Dengan berlatih menyusun sebuah bentuk pemikiran algoritmik, kita bisa menjadi terbiasa dalam memecahkan suatu permasalahan secara bertahap hingga menemukan jalan keluar yang tepat. Dasar pemikiran kita akan dilatih terus-menerus secara bertahap dalam memikirkan dan merencanakan suatu ide dan solusi yang cemerlang, membuat kita terbiasa berfikir secara kritis.

Sumber :
bertzzie.com : Desain dan Analis Logaritma (Bertzzie, 2013)

Computational thinking adalah sebuah proses untuk menyelesaikan masalah yang menggunakan metode yang sama seperti sebuah komputer saat menyelesaikan masalah. Saat kita melakukan computational thinking, artinya kita memformulasikan masalah dalam bentuk masalah komputasi dan menyusun solusi komputasi yang baik. Solusi komputasi dalam computational thinking disajikan dalam bentuk sebuah algoritma. Jika kita tidak dapat menyelesaikan masalah tersebut, maka kita harus menjelaskan mengapa tidak ditemukan solusi yang sesuai.

Computational thinking biasanya digunakan dalam pembuatan sebuah program, pengembangan aplikasi, dan hal-hal lainnya yang berhubungan dengan teknologi. Tetapi computational thinking sebenarnya juga dapat digunakan dalam berbagai bidang seperti bidang humaniora, bidang matematika, dan lain-lain. Seseorang yang menggunakan computational thinking dalam kesehariannya cenderung dapat menyelesaikan sebuah masalah dengan efektif dan effisien. Hal terjadi karena ia sudah terbiasa untuk mencari solusi dari sebuah masalah secara sistematis sehingga computational thinking menjadi sebuah kebiasaan baginya.

Dalam melakukan computational thinking, terdapat beberapa metode yang dapat digunakan antara lain :

  1. Decomposition:
    Pada metode ini, kita harus memecah masalah yang ada menjada bagian yang lebih kecil terlebih dahulu. Hal ini bertujuan untuk mempermudah kita dalam mencari solusi terhadap masalah tersebut. Metode decomposition memuat : merincikan masalah, merincikan data, dan proses.
  2. Pattern Recognition:
    Sebuah masalah selalu memiliki pola. Pola inilah yang harus kita temukan sebelum kita mencari solusi untuk menyelesaikan masalah tersebut. Pola sebuah masalah akan selalu sama. Maka, dengan melakukan metode ini, penyelesaian masalah akan lebih cepat dan tentunya tepat.
  3. Abstraction :
    Setelah kita menemukan pola dari sebuah masalah, maka hal selanjutnya yang akan kita lakukan adalah mengidentifikasi dasar-dasar masalah yang menyebabkan pola tersebut secara umum.
  4. Algorithm Design:
    Setelah melakukan semua metode di atas, selanjutnya kita akan mencari sebuah solusi untuk menyelesaikan masalah tersebut. Algorithm design adalah sebuah proses membuat langkah-langkah yang sistematis untuk menyelesaikan sebuah permasalahan. Langkah-langkah ini harus teratur, terurut, dan lengkap (tidak ada langkah yang tertinggal). Karena, apabila langkah-langkah tersebut tidak dilakukan secara sistematis, maka tidak akan terbentuk solusi yang tepat. Sebuah algoritma biasanya disajikan melalui bentuk flowchart.

Contoh sederhana dari algorithm design adalah :
– Langkah-langkah membuat teh
– Langkah-langkah menyapu lantai
– Implementasi program komputer dalam bahasa C, Pascal, Fortran, dan lain-lain.

Definisi dari sebuah algoritma :

  1. Masalah : persoalan yang ingin diselesaikan
  2. Masukan : perincian masalah dan pengidentifikasian pola
  3. Keluaran : solusi untuk menyelesaikan masalah

Algoritma yang baik memiliki sifat-sifat sebagai berikut :

  1. Benar : solusi yang dihasilkan dapat menyelesaikan masalah
  2. Efisien : solusi yang dihasilkan bersifat tepat guna (sesuai dengan masalah yang ada)
  3. Mudah diimplementasikan : solusi yang dihasilkan dapat digunakan secara realistis dan mudah

Jika kita selalu menggunakan metode algorithm design dalam menyelesaikan sebuah masalah, kita akan terbiasa dalam berhadapan dengan masalah yang lebih besar, lebih sulit, serta lebih kompleks. Tentunya dengan seperti ini, pola pikir kita akan terasah menjadi lebih kreatif lagi. Saat kita berhadapan dengan sebuah masalah, kita pasti sudah bisa merincikan masalah tersebut di luar kepala kita dan kemudian menyelesaikannya dengan solusi yang berupa langkah-langkah sistematis. Kita juga akan terbiasa untuk melakukan sesuatu sesuai urutan atau prioritas. Dengan begitu, kegiatan yang kita lakukan akan selesai secara cepat dengan hasil yang tepat.

Sumber :
www.computationalthinkingcourse.withgoogle.com (What is Computational Thinking?)
www.informatika.stei.itb.ac.id (Pengantar Berpikir Komputasi dan Pemrograman Prosedural)

Computational Thinking (CT) adalah sebuah pendekatan dalam proses pembelajaran. CT memang memiliki peran penting dalam pengembangan aplikasi komputer, namun CT juga dapat digunakan untuk mendukung pemecahan masalah disemua disiplin ilmu, termasuk humaniora, matematika dan ilmu pengetahuan. Siswa yang belajar dimana CT diterapkan dalam kurikulum (proses pembelajaran) dapat mulai melihat hubungan antara mata pelajaran, serta antara kehidupan di dalam dengan di luar kelas.

Berpikir komputasi adalah teknik pemecahan masalah yang sangat luas wilayah penerapannya. Tidak mengherankan bahwa memiliki kemampuan tersebut adalah sebuah keharusan bagi seseorang yang hidup pada abad ke dua puluh satu ini. Seperti juga bermain musik dan belajar bahasa asing, Computational Thinking melatih otak untuk terbiasa berfikir secara logis, terstruktur dan kreatif.

Salah satu metodenya adalah Algorithm Design / Perancangan algoritma: Adalah kemampuan untuk menyusun langkah-langkah penyelesaian masalah. Contohnya merancang langkah-langkah membuat kopi susu, dimulai dari mempersiapkan air panas, cangkir, sendok serta mencampur kopi, gula dan susu, mengaduk hingga menghidangkan.

Karakteristik berpikir komputasi adalah:

  1. Mampu memberikan pemecahan masalah menggunakan komputer atau perangkat lain.
  2. Mampu mengorganisasi dan menganalisa data.
  3. Mampu melakukan representasi data melalui abstraksi dengan suatu model atau simulasi.
  4. Mampu melakukan otomatisasi solusi melalui cara berpikir algoritma.
  5. Mampu melakukan identifikasi, analisa dan implementasi solusi dengan berbagai kombinasi langkah / cara dan sumber daya yang efisien dan efektif.
  6. Mampu melakukan generalisasi solusi untuk berbagai masalah yang berbeda.

Berpikir komputasi ditujukan untuk menyelesaikan masalah, bukan hanya untuk masalah seputar ilmu komputer, melainkan juga untuk menyelesaikan beragam masalah. Machine learning misalnya, telah menggubah bagaimana ilmu statistika dimanfaatkan. Sedangkan dalam bidang ilmu biologi, data mining (yang merupakan konsep komputasi) dapat melakukan pencarian pada sejumlah besar data untuk menemukan pola-pola. Harapannya adalah struktur data dan algoritma (yang merupakan teknik abstraksi pada ilmu komputer) dapat menggambarkan struktur protein dengan cara yang menjelaskan fungsi-fungsi mereka.

Selain diterapkan pada disiplin-disiplin ilmu yang disampaikan di atas, penerapan yang berpikir komputasi yang tidak kalah pentingnya adalah menerapkannya pada kehidupan sehari-hari. Bayangkan seseorang yang sebelum berangkat kerja mempersiapkan barang-barang yang akan digunakannya sepanjang hari pada tas-nya, hal tersebut adalah prefetching dan caching. Bayangkan juga apabila sesorang kehilangan pulpen-nya. Ia lalu mengusut kembali langkah-langkahnya ke belakang, hal tersebut adalah back tracking. Berpikir komputasi adalah teknik pemecahan masalah yang sangat luas wilayah penerapannya.

Bagaimanakah pengorganisasian cara mengenali dan mengklasifikasikan organisme secara efektif dan efesien ?

Algorithm Design : Pada bagian ini Anda tidak mengembangkan algoritma, tetapi Anda mungkin berpikir cara lain yang lebih efisien untuk mengklasifikasikan organisme di luar metode yang digunakan dalam kegiatan ini.

Contoh Computational Thinking (CT) :

Bagaimanakah membuat “Browniz” yang lezat sebanyak 100 box dengan efektif dan efesien ?

Bagaimana bentuk persamaan matematikanya ? Bagaimana nilai ekonomis dan break even pointnya ? Bagaimana suhu oven yang paling baik ? Bahan (kimia/alami) pengembang adonan yang paling baik dan efektif ?

Algorithm Design : Mengembangkan petunjuk pemecahan masalah yang sama secara step-by-step, langkah demi langkah, tahapan demi tahapan sehingga orang lain dapat menggunakan langkah/informasi tersebut untuk menyelesaikan permasalahan yang sama. Misalnya langkah dan tahapan membuat kue browniz yang paling efektif dan efesien sesuai dengan pola dan abstraksi sebelumnya hingga tahap packing, diurutkan secara lengkap, terukur dan kreatif.

sumber

http://www.kompasiana.com/fathur_rachim/computational-thinking-computer-science_55e06cc71593736c0a109023 = Computational Thinking = Computer Science ++

https://haddadsammir.wordpress.com/2015/01/22/berpikir-komputasi/ = BERPIKIR KOMPUTASI

Pada dasarnya Algoritma adalah susunan langkah - langkah yang logic untuk menyelesaikan tugas atau masalah. Algoritma sangat sering digunakan oleh kita pada kegiatan sehari - hari dan masalah lainnya.

Pada ilmu komputer, Algoritma harus memiliki ketentuan - ketentuan berikut :

  1. Algoritma harus memiliki sebuah data atau lebih untuk mengoperasikannya.
  2. Algoritma harus memproduksi setidaknya satu hasil pasti.
  3. Algoritma harus berhenti setelah sejumlah langkah telah dikerjakan.

Algoritma pertama kali ditemukan di sebuah buku matematika yang di tulis oleh tokoh matematika terkenal yaitu Al-Khawarizmi.

Algoritma setiap orang bisa berbeda - beda, tergantung cara berfikir setiap individu tersebut. Namun, dalam computer science, Algoritma yang paling efektif dan efisien lah yang paling tepat.

Algoritma yang baik harus memiliki bahasa yang dapat dimengerti dengan mudah, khususnya jika kita membuat program. Kita harus menggunakan bahasa yang dapat dimengerti oleh mesin agar mesin dapat melakukan seperti apa yang kita inginkan. Jika Algoritma kita gagal, maka akan terjadi bug atau kesalahan pada situasi tertentu.

Contoh algoritma adalah ketika kita ingin menghitung jumlah orang yang ada dikamar. kita akan menghitung memulai dari 0, dan akan bertambah satu untuk setiap satu orang yang ada.

Contoh lainnya ketika kita ingin mencari berlian terbesar pada sebuah tumpukan berlian. Kita akan mengambil 2 berlian dan membandingkannya, untuk berlian yang lebih kecil maka akan kita taruh kembali ke tempat yang berbeda, lalu ulangi langkah tersebut hingga mendapatkan 1 berlian yang paling besar.

Dua contoh diatas akan menjamin kita untuk mendapat hasil yang pasti, dan itulah algoritma.

Apakah algoritma penting? mengapa penting?. Tentu penting, dengan algoritma, kita dapat mengerjakan tugas lebih terstruktur dan lebih pasti, sehingga hasil yang kita dapatkan juga tepat. dalam dunia manajer, Algoritma sangat berguna untuk membuat pekerja menjadi mengerti apa yang harus mereka lakukan.

http://www.bbc.co.uk/education/guides/zpp49j6/revision





Desain Algoritma adalah proses pemecahan suatu masalah yang mencakup sejumlah karakteristik, seperti menganalisa data secara logis dan menciptakan solusi dengan menggunakan langkah-langkah yang diperintahkan atau Algoritma adalah sebuah rencana, satu set instruksi langkah-demi-langkah untuk menyelesaikan sebuah masalah. Dalam sebuah algoritma, setiap instruksi diidentifikasi dan urutan pelaksanaannya direncanakan.

Algoritma adalah salah satu dari empat pilar Ilmu Komputer. Algoritma adalah sebuah rencana, satu set instruksi langkah-demi-langkah untuk memecahkan suatu masalah. Jika Anda bisa mengikat tali sepatu, membuat secangkir teh, berpakaian atau menyiapkan makanan maka Anda sudah tahu bagaimana cara mengikuti algoritma.

Algoritma adalah sebuah rencana atau langkah demi langkah untuk memecahkan suatu masalah, contoh sederhananya yaitu jika anda sudah bisa membuat secangkir teh dan berpakaian maka anda sudah menerapkan algoritma, jadi tanpa kita sadari dalam kehidupan sehari-hari kita melakukan algoritma. Contoh lebih jelasnya yaitu jika anda membuat suatu teh maka anda akan menggunakan secangkir gelas , menyiapkan air mendidih, setelah itu anda tuangkan air mendidih tersebut dalam secangkir gelas dan jangan lupa menambah gula dengan mengaduknya sampai rata agar teh tersebut menjadi manis pada saat diminum. Maka dari itu Algoritma adalah suatu langkah-langkah yang kita lakukan untuk memecahkan suatu masalah/tugas.

large (1)

Jadi bisa kita simpulkan Algoritma sangat penting untuk memecahkan suatu masalah agar kita bisa mendapatkan solusi dan hasil yang baik dalam memecahkan masalah tersebut, tanpa algoritma jika kalian memecahkan masalah maka yang akan dihasilkan tidak sesuai dengan apa yang kita inginkan karna tidak ada langkah-langkah yang terstruktur yang harus kita lakukan dalam memecahkan suatu masalah.

Referensi :


bcc

Algoritma (Membuat Langkah dan Aturan)

algo
Sumber Gambar : www.juleszone.com

Tahap selanjutnya setelah abstraksi adalah algoritma. Algoritma adalah serangkaian instruksi atau seperangkat peraturan untuk melaksanakan tugas. Langkah-langkah yang ditempuh untuk menyelesaikan masalah haruslah runtut, terstruktur, dan tidak boleh ada yang tertinggal. Dengan begitu, semua tugas yang kita laksanakan dapat berjalan dengan lancar.

Mengapa Algoritma itu penting?

Dengan adanya algoritma, kita dituntut mampu untuk mampu berpikir logis dan menguraikan masalah agar dapat mengatasinya. Algoritma biasanya dirancang dengan tiga fitur utama, yaitu urutan, pengulangan dan seleksi. Algoritma yang baik adalah alogaritma yang mampu memecahkan masalah dalam waktu yang cepat, penggunaan sumber daya yang sedikit dan dengan cara yang efektif.

Contoh dari Algoritma, Bagaimana cara menanam biji :

  1. Menyiapkan semua yang dibutuhkan.
  2. Masukkan tanah kedalam pot.
  3. Menanam biji.
  4. Timbun biji menggunakan tanah lagi.
  5. Siram dengan air.

Hal diatas merupakan contoh sederhana dari algoritma. Dikatakan algoritma karena semua proses dilakukan secara runtut dan terstruktur. Jika salah satu poin diatas dihapus ataupun urutannya diubah-ubah, maka itu bukanlah sebuah algoritma. Jika poin diatas ditambah lagi agar menjadi lebih spesifik asal tidak merubah asumsi yang ada, maka masih bisa disebut sebagai alogaritma. Intinya untuk mencapai tujuan yang sama dapat dilalui dengan berbagai cara yang berbeda karena jalan berpikir setiap orang berbeda-beda.

Referensi :



https://community.computingatschool.org.uk

Algorithm atau algoritma adalah langkah-langkah yang dilakukan untuk menyelesaikan masalah. Algoritma juga merupakan salah satu langkah penting dalam computational thinkin. Di mana dengan algoritma, sebuah masalah yang sudah berhasil diformulasikan siap untuk diesksekusi.

Seperti halnya dalam mengerjakan soal Fisika. Setelah mengetahui rumus mana yang sesuai, pasti Anda akan mengerjakan serangkaian langkah sebelum menemukan hasilnya. Langkah-langkah tersebutlah yang dinamakan algoritma.

Dalam penerapan lebih dalam, algoritma adalah fondasi dari software-software yang ada di komputer. Atau bisa dibilang bahwa komputer hanya mampu menyelesaikan masalah jika sebelumnya sudah dibentuk algoritma-algoritma untuk menyelesaikan sebuah masalah tertentu oleh manusia. Jadi, paham mengenai jika komputer lebih cerdas dari manusia adalah salah. Karena justru manusia-lah yang mengajari komputer berbagai algoritma sehingga dapat memudahkan pekerjaan manusia. Komputer lebih cepat menyelesaikan masalah karena komputer bekerja secara spesifik. Artinya hanya mengerjakan algoritma-algoritma jika diperintah. Sedangkan manusia tidak.

Seberapa penting algoritma itu?

Algoritma sangat penting untuk menyelesaikan masalah. Karena dengan algoritma, Anda akan tahu langkah-langkah mana yang harus Anda tempuh untuk menyelesaikan masalah. Bahkan masalah yang hampir sama. Cara Anda dalam menyelesaikan masalah pun juga dapat lebih terstruktur lagi.

Secara definisi, algoritma merupakan suatu rencana yang disusun dalam bentuk langkah-langkah untuk memecahkan suatu masalah. Langkah-langkah tersebut rinciannya sangat direncanakan dan setiap langkahnya dijelaskan secara rinci. Algoritma sering digunakan sebagai dasar untuk membuat program komputer, biasanya ditulis sebagai flowchart atau pseudocode.

Algoritma digunakan untuk berbagai hal termasuk perhitungan dan pengolahan data. Jika kita memberi input algoritma yang baik, maka komputer juga akan mengeluarkan output yang baik juga. Program komputer memerlukan langkah demi langkah dan hal tersebut perlu perencanaan maka dari itu kita memerlukan algoritma.

Tahap membuat algoritma :

  1. Membuat rencana. Merencanakan solusi terhadap masalah untuk memastikannya benar, algoritma sifatnya harus jelas dan menjadi satu set instruksi yang jelas.
  2. Mewakili algoritma dengan Sistem Komputer. Dapat diwakili dengan cara pseudocode dan flowchart. Sebagian besar program dikembangkan menggunakan bahasa pemrograman. Bahasa ini memiliki sintaks khusus yang harus digunakan agar program berjalan dengan baik. Pseudocode bukanlah bahasa pemrograman, ini adalah cara sederhana untuk mendeskripsikan seperangkat instruksi yang tidak perlu menggunakan sintaks tertentu. Setiap langkah dari algoritma ditulis pada baris sendiri secara berurutan.
    Dalam pseudocode, masukan untuk mengajukan sebuah pertanyaan. sedangkan output mencetak pernyataan.

Contoh algoritma mudah yaitu dalam memasak telur goreng. Pertama, menyiapkan telur, margarin, dan garam. Setelah bahan tersedia baru kita bisa membuat telur goreng. Lalu, panaskan kompor dan masukkan margarin ke penggorengan. Setelah itu, kocok telur dan garam. Masukkan telur yang telah dikocok kedalam penggorengan. Tunggu sampai matang, lalu angkat kemudian telur goreng siap disajikan.

Sumber :
http://www.bbc.co.uk/education/guides/zpp49j6/revision/3

Setelah kita selesai menyaring data data yang penting, hal yang selanjutnya kita lakukan adala menyusun algoritma atau merancang sebuah algoritma. Maksud dari merancang sebuah algoritma adalah mengembangkan informasi penting yang sudah diseleksi (petunjuk pemecahan masalah) secara langkah demi langkah sehingga orang lain dapan menggunakan informasi atau langkah tersebut untuk memecahkan suatu masalah yang mirip.

Algoritma sangat penting dalam proses menyelesaikan suatu masalah. Dalam melakukan suatu proses atau menyelesaikan masalah sudah pasti kita membutuhkan prosedur yang tepat agar dapat menemukan solusi yang tepat.

Berikut adalah contoh sederhana yang ada disekitar kita. Saat kita ingin memakan mie instan, tentunya kita harus mengikuti ururtan saat memasaknya. Kita tidak mungkin memakan mie jika tidak merebus mienya terlebih dahulu atau kita tidak akan bisa memakan mie tanpa menuangkan bumbunya pada wadah tertentu karena nanti hasilnya akan terasa buruk.

Dari semua pernyataan diatas, kita dapat menyimpulkan bahwa algoritma dalam computational thinking memiliki peranan yang sangat penting. Jika kita menyelesaikan masalah tanpa melalui proses penyusunan algoritma, hampir bisa dipastikan kalau kita tidak akan pernah menyelesaikan masalah dengan hasil yang baik karena hasilnya akan selalu berantakan dan tidak beraturan
Sumber :

Algoritma merupakan bagian dari computational thinking, yaitu tahapan untuk merangkai suatu masalah yang ada dengan logis dan sistematis serta mudah dijalankan dan mudah untuk dipahami . Sedangkan menurut Kamus Besar Bahasa Indonesia, Algoritma adalah urutan pengambilan keputusan untuk pemecahan masalah

Algoritma sangatlah penting karena tahapan algoritma dikonsep secara matang dan dapat ditentukan, benar atau salahnya
Setiap algoritma diharapkan bersifat efektif, dalam arti semua operasi yang dilaksanakan oleh algoritma harus sederhana dan dapat dikerjakan dalam waktu yang terbatas.
6daab39b1dee

Pada dasarnya terdapat tiga struktur dasar yang menyusun suatu algoritma :
a. Sekuensial (runtutan)
Pada struktur sekuensial, langkah-langkah algoritma dikerjakan secara berurutan.
b. Seleksi
Struktur seleksi menyatakan pemilihan langkah yang didasarkan oleh suatu kondisi (pengambilan kepurusan).
c. Pengulangan
Pengulangan menyatakan suatu tindakan atau langkah yang dijalankan beberapa kali.
8896773-movie-icons

Contoh algoritma sederhana adalah ketika kita ingin menoton suatu film, kita harus memilih genre film sesuai keinginan, selanjutnya kita haruus melihat refrensi rating dari suatu film itu sendiri, selanjutnya kita harus menentukan judul , dan yang terakhir kita tinggal menonton film tersebut entah dengan cara nonton di bioskop maupun, nonton di internet

source :


Algoritme

Algoritme memiliki arti bahasa yaitu langkah untuk menyelesaikan masalah. Dan pengertian dari algoritme di dalam computational thinking adalah penyusunan langkah-langkah yang akan dikerjakan guna menyelesaikan suatu masalah komplex. Algoritme biasanya di tuliskan dengan 2 model, yaitu dengna pseudocode atau flowchart.

Mungkin algoritme hanya dilakukan oleh para penemu solusi saja? Atau mungkin kalian berpikir bahwa algoritme hanya dilakukan oleh segelintir orang saja? Jawabannya adalah tidak, sebenarnya kita semua melakukan algortime setiap hari. Sebagai contoh ketika kita melakukan kegiatan pasca bangun tidur hingga berangkat kuliah. Setelah bangun kita melakukan mandi, melakukan sholat subuh bagi yang muslim, sarapan, ganti baju, dan terakhir berangkat. Nah itulah yang dinamakan algoritme.

Algoritme dari suatu tujuan dapat berisi langkah-langkah yang berbeda, bisa jadi langkah-langkah yang dilakukan lebih banyak daripada biasanya dan bisa jadi langkahnya lebih sedikit dari normalnya. Semua algoritme sebenarnya benar, tidak ada algoritme yang salah, namun algoritme yang paling baik memiliki ciri-ciri yaitu langkah-langkah yang terdapat di dalamnya sedikit dan dapat mencapai tujuan sesuai yang diinginkan atau yang sering disebut dengan efektif dan efisien. Selain itu ciri lainnya adalah algortime tersebut mudah dipahami oleh orang lain juga.

Referensi

http://www.bbc.co.uk/education/guides/zpp49j6/revision

Tahapan ketiga daripada berpikir secara computational thinking yaitu Algorithm. Algorithm bukan melulu tentang matematika, tetapi algorithm yang di maksud disini adalah pentahapan. Algorithm adalah cara berpikir dengan melakukan pentahapan atau step by step atau langkah demi langkah sehingga apa yang akan dilakukan tertuju dengan jelas dan solusi bisa efektif atau tepat pada sasaran yang dituju dengan persentase keberhasilan besar.

Cara berpikir secara algorithm yaitu dengan cara membuat langkah-langkah atau merencanakannya terlebih dahulu sebelum memutuskan untuk melakukannya. Dengan begitu tujuan akan terpapar dengan jelas begitu juga cara untuk mencapainya. Karena algorithm harus memiliki titik awal, seperangkat instruksi, variabel, pesan dan titik akhir yang jelas.

Contoh dari tahap algorithm yaitu dengan membuat flowchart dan pseudocode terlebih dahulu sebelum kita memulai untuk membuat suatu program. Sehingga kita tahu apa yang akan kita lakukan selanjutnya dan bisa membuat pemecahan masalah menjadi efektif dan efisien.

Referensi :
Edupac : https://www.eduspec.com.my/computationalthinking_Algorithms.php
Wordpress : https://www.eduspec.com.my/computationalthinking_Algorithms.php
Gambar : https://www.eduspec.com.my/img/ComputationalThinking/AlgorthmsImg.png

Setelah melalui 3 langkah sebelumnya yaitu dekomposisi, pengenalan pola, dan abstraksi. Selanjutnya ialah menyusun langkah-langkah yang perlu dilakukan untuk memecahkan sebuah masalah. Langkah-langkah tersebut haruslah urut dan sistematis. Inilah yang dinamakan dengan Algoritma. Algoritma dapat disusun setelah 3 langkah sebelumnya terselesaikan, karena jika ada satu saja langkah yang belum terselesaikan dan langsung melompat ke algoritma, akan mempersulit membuat susunan langkah dalam memecahkan masalah.

Dalam membuat suatu algoritma perlu diperhatikan beberapa aspek, yaitu langkah-langkah yang disusun haruslah jelas dan masuk akal. Ketika algoritma mempunyai susunan yang jelas dan masuk akal, dalam pemecahan masalah akan ditemukan pula solusi yang sesuai dengan yang dibutuhkan serta dapat dipastikan tepat sasaran.

Contoh dari algoritma secara sederhana ialah ketika akan menyalakan sebuah komputer, yang pertama kali dilakukan adalah dengan menancapkan kabel ke stopkontak agar komputer teraliri daya listrik. Berikutnya adalah menyalakan CPU dan monitor. Sederhana sebenarnya langkah yang diperlukan, akan tetapi butuh kejelasan dan kelogisan.

Apa pentingnya algoritma dalam penyelesaian masalah? Sangat penting dan sangatlah penting. Algoritma yang jelas, terstruktur, efisien, efektif, dan masuk akal akan jauh memudahkan pemecahan masalah. Apabila ada satu langkah algoritma yang salah, akan membuat solusi yang ditemukan tidak sesuai dengan yang dibutuhkan.

Referensi :

Algorithm adalah cara untuk mendapatkan solusi melalui definisi yang jelas tentang langkah-langkah yang dibutuhkan. Algoritma dapat juga diartikan sebagai langkah – langkah yang dapat diikuti untuk menyelesaikan suatu masalah. Ada langkah atau syarat dalam melakukan sesuatu untuk mencapai hasil dari sebuah masalah awal dan juga yang mirip. Sebagai contoh, ketika sedang melakukan perhitungan kita mengetahui bahwa ada syarat atau cara dalam melakukannya. Dalam perkalian kita memahami bahwa 1 dikali 2 hasilnya 2, karena 1 dikali 2 berarti 1 ditambah 1 sebanyak 2 kali. Dengan mengetahui itu, kita dapat menyelesaikan masalah perkalian dengan cepat dan tepat jika pertanyaan tersebut muncul lagi.

Sebagai contoh, ketika membuat sebuah program menggunakan Java, kita selalu memulai dengan mebuat file baru, lalu dilanjutkan dengan membuat nama untuk file tersebut, kemudian mengisi program tersebut dengan koding, lalu kita menutup pemrograman, dan hasilnya akan ditampilkan pada layar. Berpikir algoritmic membantu kita untuk mengikuti langkah - langkah tersebut untuk memudahkan proses pengerjaan. Jika ada kesalahan pada langkah, kita dapat mengulang kembali ke langkah yang salah dan memperbaikinya.

pada ilmu komputer, Algoritma harus memiliki ketentuan - ketentuan berikut :

  1. Algoritma harus memiliki sebuah data atau lebih untuk mengoperasikannya.
  2. Algoritma harus memproduksi setidaknya satu hasil pasti.
  3. Algoritma harus berhenti setelah sejumlah langkah telah dikerjakan.

Sumber :


Create the step to solve your problem with algoritm design

Mendesain algoritma adalah langkah/tahapan terakhir dalam computational thinking. Algroritma mengubah proses pemecahan masalah dari konsep menjadi tindakan yang dapat kita lakukan. Algoritma sendiri adalah sebuah tahapan-tahapan yang harus kita lakukan untuk menyelesaikan masalah. Sebuah algoritma haruslah memiliki sebuah perintah dan urutan pengerjaan yang jelas sehingga dapat dilaksanakan dan menghasilkan solusi seperti yang diharapkan.

Algoritma dapat direpresentasikan dengan sebuah pseudocode ataupun flowchart. Algoritma setiap orang berbeda-beda tergantung kepada bagaiamana cara berpikir orang yang membuatnya, ketika ada bug/kesalahan pada hasil yang dikeluarkan maka dapat dipastikan ada suatu kesalahan dalam algoritma yang dibuat.

Tanpa kita sadari dalam kehidupan sehari-hari kita sering menggunakan algoritma seperti pada saat memakai pakaian, tentu kita perlu mengikuti urutan yang jelas agar kita dapat memakai pakaian tersebut dengan baik dan tidak terbalik. Seorang programmer yang berpengalaman akan dengan mudah menentukan algoritma yang baik, efektif dan efisien, lain halnya dengan programmer yang kurang berpengalaman mereka pasti kesusahan menentukan alur kerja yang baik dan akan kebingungan apabila terjadi sebuah kesalahan di programnya.

Sumber :
http://www.bbc.co.uk/education/guides/zpp49j6/revision/3




Algoritma adalah sebuah rencana, satu set instruksi langkah-demi-langkah untuk menyelesaikan sebuah masalah. Dalam sebuah algoritma, setiap instruksi diidentifikasi dan urutan pelaksanaannya direncanakan. Algoritma digunakan untuk mengembangkan petunjuk pemecahan masalah yang sama secara step-by-step, langkah demi langkah, tahapan demi tahapan sehingga orang lain dapat menggunakan langkah/informasi tersebut untuk menyelesaikan permasalahan yang sama.

Dalam sebuah algoritma, setiap instruksi diidentifikasi dan urutan pelaksanaannya direncanakan. Algoritma sering digunakan sebagai titik awal untuk membuat program komputer, dan terkadang ditulis sebagai flowchart atau pseudocode.

Jika kita ingin memberi tahu komputer untuk melakukan sesuatu, kita harus menulis program komputer yang akan memberi tahu komputer, langkah demi langkah, apa yang kita inginkan dan bagaimana kita ingin komputer melakukannya. Program langkah-demi-langkah ini perlu perencanaan, dan untuk melakukan ini kita menggunakan algoritma.

Algoritma digunakan untuk berbagai hal termasuk perhitungan, pengolahan data dan otomasi.
Pemikiran algoritmik merupakan kumpulan kemampuan yang terhubung untuk membangun dan memahami algoritma, sebagai berikut :

  • Kemampuan untuk menganalisa masalah yang diberikan
  • Kemampuan untuk menentukan suatu masalah secara tepat
  • Kemampuan untuk menemukan tindakan dasar yang cukup untuk masalah yang diberikan
  • Kemampuan untuk membangun algoritma yang benar untuk masalah yang diberikan dengan menggunakan dasar tindakan
  • Kemampuan untuk memikirkan semua kemungkinan terburuk secara khusus dan normal dari sebuah masalah
  • Kemampuan untuk meningkatkan efisiensi suatu algoritma

Bagaimana cara berpikir secara algoritma
Yaitu dengan mencoba menyelesaikan banyak masalah. Khususnya bagi pemula yang ingiin belajar algoritma . Masalah harus dipilih dengan sangat hati-hati. Terutama pemula
memiliki banyak masalah untuk memahami bahasa pemrograman komputer yang mendasar
sehingga mereka tidak bisa lagi berkonsentrasi pada desain algoritma baru. Permasalahan yang harus dipecahkan seharusnya tidak selalu sederhana, tapi masalahnya
harus mudah dimengerti. Meskipun permasalahan tersebut kompleks tetapi mudah dimengerti. Masalah yang lebih kompleks memberi lebih banyak ruang
kreativitas kepada setiap individu, terkadang dengan solusi yang tidak biasa.

Pemikiran Algoritma adalah cara untuk mendapatkan solusi melalui definisi yang jelas tentang langkah-langkah yang diperlukan.

Alih-alih datang dengan satu jawaban atas sebuah masalah, seperti 42, siswa mengembangkan algoritma. Mereka adalah instruksi atau peraturan yang jika diikuti secara tepat (baik oleh seseorang atau komputer) menyebabkan jawaban atas masalah asli dan yang serupa.

Pada dasarnya algoritma itu berpikir secara logic untuk menyelesaikan suatu masalah.

Sebagai contoh, kita semua belajar algoritma untuk melakukan perkalian di sekolah. Jika kita (atau komputer) mengikuti aturan yang kita ajarkan justru kita bisa mendapatkan jawaban atas masalah perkalian. Begitu kita memiliki algoritma kita tidak perlu memikirkan bagaimana melakukan perkalian dari nol setiap kali kita dihadapkan dengan masalah baru.

Kekuatan pemikiran algoritmik adalah memungkinkan solusi otomatis.

Berikut ini menggambarkan pemikiran algoritma.

Seperti komputer, otak kita menggunakan ‘aturan’ untuk membantu kita memahami dunia.
Seperti algoritma yang memiliki aturan atau langkah-langkah yang logis.

Tahapan dalam algoritma yaitu :

  1. Membuat rencana. Merencanakan solusi terhadap masalah untuk memastikannya benar, algoritma sifatnya harus jelas dan menjadi satu set instruksi yang jelas.

  2. Mewakili algoritma dengan Sistem Komputer. Dapat diwakili dengan cara pseudocode dan flowchart. Sebagian besar program dikembangkan menggunakan bahasa pemrograman. Bahasa ini memiliki sintaks khusus yang harus digunakan agar program berjalan dengan baik.

    Pseudocode bukanlah bahasa pemrograman, ini adalah cara sederhana untuk mendeskripsikan seperangkat instruksi yang tidak perlu menggunakan sintaks tertentu. Setiap langkah dari algoritma ditulis pada baris sendiri secara berurutan.

    Dalam pseudocode, masukan untuk mengajukan sebuah pertanyaan. sedangkan output mencetak pernyataan.

Jadi: algoritma membuat kita menyelesaikan masalah secara lebih logis.

sumber:


Berpikir komputasi ditujukan untuk menyelesaikan masalah, bukan hanya untuk masalah seputar ilmu komputer, melainkan juga untuk menyelesaikan beragam masalah. Machine learning misalnya, telah menggubah bagaimana ilmu statistika dimanfaatkan. Sedangkan dalam bidang ilmu biologi, data mining (yang merupakan konsep komputasi) dapat melakukan pencarian pada sejumlah besar data untuk menemukan pola-pola.

Harapannya adalah struktur data dan algoritma (yang merupakan teknik abstraksi pada ilmu komputer) dapat menggambarkan struktur protein dengan cara yang menjelaskan fungsi-fungsi mereka.

Algorithm Design, yaitu mengembangkan petunjuk pemecahan masalah yang sama secara step-by-step, langkah demi langkah, tahapan demi tahapan sehingga orang lain dapat menggunakan langkah/informasi tersebut untuk menyelesaikan permasalahan yang sama. Kemampuan untuk menyusun langkah-langkah penyelesaian masalah. Contohnya merancang langkah-langkah membuat kopi susu, dimulai dari mempersiapkan air panas, cangkir, sendok serta mencampur kopi, gula dan susu, mengaduk hingga menghidangkan.

Misalnya bagaimanakah langkah mencari file-file dokumen yang ada dalam sebuah komputer ?. Pada bagian ini Anda tidak mengembangkan algoritma, tetapi Anda mungkin berpikir cara lain yang lebih efisien untuk mengklasifikasikan organisme di luar metode yang digunakan dalam kegiatan ini.

Sumber : 1.https://www.kompasiana.com/fathur_rachim/computational-thinking-computer-science_55e06cc71593736c0a109023
2. https://haddadsammir.wordpress.com/2015/01/22/berpikir-komputasi/

Algoritma adalah sesuatu yang diperlukan, algoritma merupakan langkah-langkah atau prosedur yang dilakukan secara berurutan untuk menyelesaikan suatu permasalahan. Pertama kali diperkenalakan oleh Al-Khawarizmi. Urutan langkah dalam desain algoritma penting untuk diperhatikan karena jika salah satu tahapan salah ataupun kita melewatkan salah satunya, maka akan mempengaruhi hasil akhir secara keseluruhan. Sebagai contoh saat memasak kita lupa memasukkan garam, maka tentunya hasil masakan akan terasa hambar.

Contoh lain saat melakukan percobaan reaksi kimia jika kita mncampurkan dua larutan yang tepat maka hasil reaksi tentu akan sesuai dengan ekspektasi, namun jika kita mencampurkan dua larutan yang tidak tepat yang terjadi akan diluar prediksi. Seperti itulah algorithma.

Dalam proses desain algoritma ada beberapa bagian yaitu menentukan langkah atau tahapan yang tepat, menjalankan tahapan secara utuh, dan belajar dari kesalahan. Sebagaimana contoh diatas menentukan tahapan yang tepat dan melakukannya tanpa melewatkan satupun sangat berpengaruh pada keberhasilan dalam menyelesaikan masalah, namun apabila terjadi kesalahan kita bisa mengkaji ulang dan menjadikannya sebagai sebuah pembelajaran. cara yang dilakukan seseorang dalam menyelesaikan sesuatu mungkin bisa berbeda-beda namun desain algoritma dikatakan baik apabila mampu menyelesaikan complex problem secara efektif dan efisien.