Oke, hello para besties, welcome back to the video dengan tutor paling aneh yang ada di sejagat raya Seperti halnya di video sosiologi sebelumnya, aku juga pengen minta maaf karena jadwal uploadnya 2 minggu kebelakang belum bisa sekonsisten yang aku pengen ya Karena satu atau lain hal, jadi agak ribet buat nyesuaiin jadwal upload yang konsisten Tapi mudah-mudahan ke depannya jadwal uploadnya bisa konsisten lagi, oke? Nah, di video sekarang, kan video sebelumnya kita ngomongin masalah berpikir komputasional Masih inget gak? Ayo, masih inget gak?
Is? Ingat berpikir komputasional? Nah, salah satu topik yang kita bahas di dalam berpikir komputasional, juga salah satu tahapan dalam berpikir komputasional adalah masalah algoritma.
Gitu Nah, di video sekarang kita bakal ngobrolin lebih jauh algoritma itu apa. Gitu ya. Dan gimana sih caranya teman-teman bisa ngerancang algoritma sendiri.
Gitu Oke? Let's go! Jadi sebenarnya apa sih yang disebut dengan algoritma?
Istilahnya tuh kayak kelihatan asing banget, but it's actually not that scary gitu loh. Kayak nggak seserem itu loh algoritma tuh. Kalau aku bisa bilang algoritma itu adalah teknik.
Nah tekniknya gimana? Pertama, Algoritma itu adalah teknik yang goalnya adalah untuk menyelesaikan suatu permasalahan. Nah, algoritma itu harus kayak gimana sih?
Yang namanya algoritma itu, pertama harus well defined, yang kedua ada sequential. Dan yang ketiga harus computational Gitu Jadi bisa dikatakan Kalau aku bilang sederhananya tuh Kalau misalnya ini ada input ya Misalnya ini input Satu hal yang kita kasih Nah dengan algoritmanya Nanti bisa diproses menjadi suatu output Gitu Contoh kalau misalnya ada indomie sebungkus dengan algoritma masak Indomie bisa berubah menjadi Indomie yang siap makan. Nah, kayak gitu.
Jadi ini ada input, ada masukan, nanti diproses, lalu nanti jadi output. Itu apa ya hasilnya. Nah, teknik untuk ngeproses masukan ini, si teknik untuk ngeproses masukannya, itu namanya algoritma. Dan yang namanya algoritma itu, pertama, harus well-defined. Maksudnya well-defined apa?
Maksudnya well-defined itu jangan sampai ada yang nggak jelas. Kayak sudah dibuat dengan rapi Sudah dibuat dengan jelas Jelas, lengkap Sequential disini maksudnya berurutan Dan computational itu melibatkan proses berhitung Melibatkan suatu proses berhitung atau komputasi Nah gitu ya. Berarti yang namanya algoritma itu mirip ala-ala resep masak.
Kalau misalnya teman-teman pernah lihat resep masak ya. Kalau misalnya teman-teman pernah lihat resep masak. Yang namanya resep masak itu.
Kan biasanya kalau kita melihat resep masak itu rapih kan. Ya dalam arti kayak ada bahan-bahannya, ada langkah-langkahnya. Bentar ini aku kasih lihat nih.
Ada misalnya resep apa ya. Resep indomie. Itu deh resep Indomie... Itu loh, apa sih?
Mie Kocok Bandung. Nah, iya. Resep kreasi Indomie Mie Kocok Bandung. Nah, kita lihat nih.
Oh, ini ada nih. 5 resep masak Indomie yang BSD mewah. Let's see. Ini, aku pengen kasih lihat ini.
5 resep masak Indomie yang berbeda. Kita lihat ya. Misalnya di sini, Indomie goreng nyemek. Pedas yang nikmat. Gitu kan.
Nah, kita lihat. Pertama. Ini ada cara yang gampang Dan ini ada cara yang agak ribet Kalau katakan nulisnya Tapi disini kita lihat bahan-bahannya udah direfinisiin dengan jelas Satu bungkus indomie goreng Pakai telur sebutir, dada ayam, jamur kuping Cabai rawit, dan lain-lain Dan cara membuatnya tuh udah ngurut Satu sampai tujuh Jadi kita lihat disini Ini adalah satu contoh algoritma yang rapih Yang bisa kita pakai untuk kehidupan kita sehari-hari Pertama dia udah well-defined Ya Dia udah well-defined, dalam arti udah didefinisiin semua secara lengkap ya, bahan-bahannya, cara bikinnya, terus takaran porsi gitu-gitunya.
Lalu sequential, dalam arti udah ngurut. Cara-cara bikinnya juga udah ngurut. As you can see di sini, apa sih namanya tuh? Resep masak tuh bisa jadi satu contoh algoritma yang nunjukin, yang rapi gitu loh.
Cuman kan yang ngebedain resep masak dengan algoritma komputer adalah, kalau resep masak tuh kan ditulis pakai bahasa manusia. Gitu kan ya, sehingga manusia yang ngerti. Tapi kalau algoritma, Itu pakai bahasa komputer, makanya dia computational. Karena kan yang nanti ngerjain algoritmanya itu kan komputer.
Makanya harus kita pastikan bahwa algoritma kita itu rapi. Sekarang pertanyaannya buat apa sih? Buat apa sih? Buat apa algoritma?
Jadi deh. Misalnya nih teman-teman kerja kelompok Biasanya kan kalau kerja kelompok itu Kalau teman-teman kumpul untuk KORKOM yang kerja-kerja Kelompok-kelompokan gitu Biasanya yang kerjanya kan cuma satu orang Yang lainnya pada gabut gagelas Upload TikTok, pamer kebahagiaan di Instagram Pamer-pamer kebahagiaan di IG Ngedit-ngedit foto di IG terus dipamerin kebahagiaan Atau upload-upload status galau di TikTok sama IG Sosokan si paling quotes Dikat? Kalau kerja kelompok nggak pakai algoritma, jatuhnya kayak gitu.
Tapi kalau misalnya kita menggunakan algoritma ketika kerja kelompok, kita kan bakal bisa nentuin ini masing-masing orang dalam kelompok itu perannya apa aja. Terus untuk bisa nyelesain tugasnya, itu apa aja yang harus dikerjain, langkah-langkahnya kayak gimana, masing-masing orang ngerjain apa. Kalau misalnya kita sudah bisa menyusun algoritma, ketika kerja kelompok sekalipun, kita bisa nyusun... Apa?
Kita bisa nyusun supaya tugas kelompoknya itu bisa selesai dengan rapih. Ini tugas, ini goalnya itu harus kayak gini. Oke, dengan orang-orang yang ada, bahan-bahan yang ada, untuk nyampe goal itu apa aja yang harus kita lakuin step-by-stepnya, masing-masing orang ngerjain apa buat ngebagi tugasnya.
Nah, itu kalau misalnya kita ngomongin kerja kelompok. Sekarang bayangin kalau komputer. Gitu Kalau kita bicara dunia komputer. Komputer kan nggak tahu apa-apa. Gitu loh.
Komputer tuh jadi bisa tahu ngerjain ini itu karena kita program dia kan. Dan ketika kita ngebuat program tuh maksudnya kita bikin instruksi buat komputer. Kayak lu tuh mesti gini, gini, gini, gini, gini, gini. Gitu Nah tentu saja kalau misalnya nggak ada algoritmanya, ini instruksinya jadi acakadut, nggak jelas. Makanya butuh algoritma supaya ketika kita mau ngasih instruksi sama komputer jadi puguh.
Kalau kata bahasa Sundama jadi puguh. Jadi jelas. Gitu loh. Ini tes komputernya harus ngapain, apa aja yang diminta, dan hasilnya tuh mesti kayak gimana.
Gitu Jadi untuk itulah ada algoritma Nah, algoritma itu sendiri ada tiga ya Algoritma itu sendiri ada tiga Pertama ada sorting algorithm Yang kedua itu ada searching algorithm Yang ketiga itu ada graph Mungkin kalau teman-teman pakai buku, entah itu dari Camp Dequart atau yang lain, jarang ada yang menyebutkan masalah graph algorithm ya. Tapi ini adalah algoritma yang cukup umum digunakan juga sebenarnya. Cuman mungkin karena terlalu serem ketika diimplementasiin atau dibahas, makanya nggak begitu diangkat.
Well, but this is Aldian's video, so I can just do anything I want. Ini kan video aku, aku bisa ngelakuin apapun yang aku mau. Sekarang, sorting algorithm itu maksudnya algoritma untuk ngurutin data. Kita punya data banyak, terus gimana kita ngurutin Entah itu dari paling kecil ke paling gede Atau dari paling gede ke paling kecil Searching algorithm itu untuk nyari data Kalau teman-teman sering ngeliat algoritma Youtube Algoritma Google Biar videonya naik ke atas Ya emang naik ke atas ya Aldian, kok gimana sih Nah itu maksudnya ada di searching algorithm Nah, graph algorithm Itu Misalnya kalau kita ada dua kota nih Terus kita diminta untuk nyari jarak mana yang paling pendek untuk sampai dari kota A ke kota B.
Nah itu hal-hal kayak gitu tuh pakai graph algorithm. Alah-alah kalau misalnya teman-teman mau pergi dari Jogja ke Magelang, terus pakai Google Maps buat nyari jalan apa yang paling cepat gitu, lewat mana yang paling cepat. Nah itu graph algorithm. Gitu ya.
Nah intinya, apa? Algoritma tuh jenisnya ada tiga. Sorting, searching, dan graph.
Ini adalah sebuah teknik untuk nyelesain masalah. Yang jadi pertanyaan adalah, Gimana sih caranya teman-teman bikin algoritma sendiri? Gimana caranya teman-teman bisa merancang algoritma?
Karena teman-teman merancang algoritma, itu ada tiga. Cara nulis algoritma gitu ya. Itu ada tiga.
Pertama, bisa dengan deskripsi. Maksudnya dengan deskripsi itu kayak diceritain gitu loh. Ini mesti kayak gini, kayak gini, kayak gini, kayak gini, kayak gini, kayak gini.
Kayak gini, kayak gini, kayak gini, kayak gini. Deskripsi. Kayak diceritain.
Yang kedua, bisa juga pakai flowchart. Cloud chart itu kayak grafik kotak-kotak. Kayak gini nih. Terus nanti gini.
Terus nanti gini. Dan seterusnya. Jadi dibikin dalam bentuk bagan.
Kalau cloud chart itu. Dan yang ketiga itu dengan menggunakan pseudocode. Pseudocode itu...
Mirip bahasa pemrograman Jadi teman-teman bikin algoritma Dengan cara Nulis apa yang pengen teman-teman lakuin Gitu ya Si instruksinya itu Tapi ditulis Pakai bahasa pseudocode namanya Pseudocode juga ada bahasanya sendiri ya Bahasa pseudocode Yang si bahasa pseudocode itu Mirip sama bahasa pemrograman Dan nanti ketika orang baca pseudocodenya Mereka ngerti Ketika pseudocode itu harus di convert Jadi Jadi pakai bahasa pemrograman tertentu Misal kayak gini nih Kasih contoh pseudocode ya Loading terus Nah ini dia Misal nih Ada contoh Apa Ada kayak gini, if 1 print response imcase 1, if 2 print response imcase 2. Nah ketika pseudocode ini akan kita tulis ulang menggunakan bahasa pemrograman, mau bahasa pemrogramannya apapun, kita bisa nulis ulang apa yang dipengen sama pseudocode ini jadi ke dalam bahasa pemrograman. Misal kalau si if ini aku tulis ulang ke visual basic. White line imcase 1. Nah ini dia.
Ini mungkin kalau pakai Visual Basic jatuhnya bakal jadi kayak gini. Sisi pseudocode itu ditulis oleh orang pakai Visual Basic. Tapi kalau misalnya aku tulis ulang, let's say pakai javascript misalnya ya, mungkin aku bahkan tulis kayak gini Dengan mengasumsikan kalau print ini fungsi untuk nge-print ya, ceritanya, ceritanya Eh, I am case 2. Jadi dengan pseudo code ini adalah kumpulan pake bahasa khusus yang dia mendekati bahasa pemrograman.
Gitu Itu cara temen-temen bisa menulis satu algoritma. Untuk lebih lengkapnya, sumber internet bisa banyak dicari ya. Tapi kalo temen-temen ingin belajar lebih jauh tentang deskripsi flowchart dan pseudo code, request. Coba aku pengen liat berapa banyak yang pengen belajar lebih jauh.
Let me know in the comments ya Berapa banyak dari teman-teman yang pengen belajar lebih jauh masalah ini Nah, video selanjutnya kita bakal masih ngobrolin tentang computational thinking ya Tentang bab berpikir komputasional Aku bakal antara bikin video request teman-teman apakah pengen belajar lebih jauh tentang ini Atau kita akan ngebahas sorting, searching, sama graph algorithm Cara kerja mereka itu kayak gimana Thank you so much for staying with me in the video Terima kasih banyak teman-teman udah nonton video ini sampai beres Jangan lupa like, share, subscribe Dan kasih tau temen-temennya semuanya Pokoknya harus jangan lupa nyalain notification bellnya ya Seperti biasa video sosiologi tiap kamis Video informatika setiap Jumat Kalau ada apa-apa langsung ke komen aja oke Dan whiteboard ini mungkin bakal aku share juga Di website aku di aldianhuau.site Jangan sampai ketinggalan oke Bye-bye