Materi Informatika - Strategi Algoritmik dan Pemrograman Kelas 11 - Belajar Pintar
BelajarPintarV3
Peta Belajar Bersama
Halo, Sobat Pintar!
Sebelum kita belajar, yuk lihat peta belajar bersama tentang algoritmik dan pemrograman ini dulu!
Proses Pemrograman
Sobat Pintar sudah belajar mengenai koding di kelas 10, kan?
Nah kali ini kita akan belajar mengenai pemrogramannya.
Setelah kita mengetahui cara menulis kode program, kita bisa membuat sebuah program baru dengan kode-kode tersebut.
Pemrograman menurut buku “Oxford Dictionary of Computer Science” adalah seluruh aktivitas teknis yang dilakukan untuk menghasilkan suatu program, termasuk analisis kebutuhan dan seluruh langkah desain dan implementasi suatu program.
Dalam membuat suatu program, terdapat empat langkah yang dilakukan saat melakukan pemrograman, yaitu :
1. Menganalisis Masalah (Analyzing)
Sebelum membuat sebuah program, pemrogram harus menganalisis terlebih dahulu kebutuhan atau keadaan saat ini untuk menghasilkan definisi permasalahan yang perlu diselesaikan dengan sebuah program. Masalah yang dianalisis dapat berupa masalah baru atau penyempurnaan dari solusi yang sudah ada. Tahap ini menghasilkan masalah (problem statement) yang menjelaskan masukan (input), keluaran (output), serta batasan-batasan (constraint) dari program yang akan dibuat.
2. Mendesain Solusi (Problem Solving)
Setelah mengetahui kebutuhan dari masalah yang ada, pemrogram harus merencanakan strategi untuk menghasilkan keluaran berdasarkan masukan yang diterima. Pemrogram tidak harus merencanakan solusi dari awal, tapi juga dapat menggunakan solusi yang sudah ada dari permasalahan sebelumnya. Proses ini akan menghasilkan algoritma berupa narasi, pseudocode, atau diagram alir.
3. Mengimplementasikan solusi dalam bentuk program (Coding)
Pemrogram akan menuliskan kode program untuk menjalankan solusi yang telah direncanakan sebelumnya dengan menggunakan suatu bahasa pemrograman. Dalam mengubah algoritma menjadi kode program melibatkan beberapa pertimbangan teknis, misalnya tipe data, struktur kontrol yang digunakan, dan lain-lain.
4. Menguji Program (Testing)
Setelah program dapat dijalankan, program tersebut harus diuji untuk memastikan program berjalan dengan benar, sesuai dengan batasan yang diberikan.
Dalam membuat sebuah program, keempat langkah di atas tidak hanya dilakukan sekali, namun bisa juga dilakukan berkali-kali dikarenakan setelah penguji bisa saja terdapat beberapa hal yang harus direvisi.
Agar lebih mudah dipahami, perhatikan siklus pemrograman berikut!
Banyak sekali contoh yang dapat kita rasakan dalam proses pemrograman ini, salah satunya adalah aplikasi yang kita gunakan sering kali meminta penggunanya untuk update versi terbaru dari aplikasi tersebut karena mereka baru saja menyelesaikan atau mengembangkan masalah dari aplikasi tersebut.
Sobat pintar perlu tahu nih, kalau semakin banyak permasalahan yang harus diselesaikan, maka suatu program akan semakin kompleks. Oleh karena itu, dalam membuat sebuah program, dibutuhkan banyak orang dengan keahlian dan spesialisasi yang berbeda untuk menyelesaikan masalah dari program tersebut.
Rekursif
Setelah Sobat Pintar tahu mengenai proses pemrograman, kita juga perlu tahu mengenai berpikir komputasional.
Berpikir komputasional merupakan suatu kerangka dan proses berpikir yang mencakup perangkat keras, perangkat lunak, dan menalar (reasoning) mengenai sistem dan persoalan.
Terdapat 3 konsep dan strategi berpikir komputasional yang biasa digunakan dalam menyelesaikan persoalan komputasi, yaitu : rekursi, algoritma greedy, dan pemrograman dinamis.
Kali ini kita akan membahas tentang rekursi terlebih dahulu ya, Sobat!
Rekursi didefinisikan sebagai “sesuatu” yang mengandung “sesuatu” itu sendiri. Maksudnya, suatu masalah dapat didekomposisi menjadi permasalahan yang serupa, namun dengan skala atau ukuran yang lebih kecil.
Salah satu contoh sederhana dari rekursi adalah mainan bebek ini, lho!
Menarik sekali, kan?
Di dalam boneka bebek masih ada bebek lagi dengan ukuran yang lebih kecil.
Tapi kita tidak akan membahas mengenai bebeknya ya!
Dalam pembahasan kali ini, kita akan membahas fungsi atau barisan rekurensi, yaitu fungsi/barisan dimana nilai dari fungsi atau barisan tersebut ditentukan atau tergantung dari nilai fungsi/barisan itu sendiri secara rekursif, pada urutan nilai-nilai sebelumnya.
Misalkan terdapat sebuah barisan ai dengan i = 1, 2, 3, …, n sebagai berikut:
{ai} = 1, 1, 2, 3, 5, 8, …
Dimana nilai dari barisan pertama a1 = 1, a2 = 1, kemudian nilai berikutnya dihitung dengan menambahkan dua barisan sebelumnya. Bentuk tersebut dapat kita tuliskan dalam notasi rekursif berikut:
Contoh barisan di atas dikenal dengan istilah barisan fibonacci yang merupakan aplikasi dari fungsi/barisan rekursif.
Pada sebuah barisan/fungsi rekursif minimal terdapat dua hal yang harus ditentukan, yaitu:
1. Basis : menunjukkan dasar/nilai awal dari fungsi/barisan tersebut
2. Rekursi : menunjukkan hubungan antara nilai dari fungsi/barisan tersebut dengan nilai-nilai sebelumnya yang telah diketahui
Pada contoh barisan fibonacci, a1 = 1 dan a2 = 1 merupakan basis, sedangkan ai = ai-1 + ai-2, jika i > 2 merupakan rekursinya.
Larik (Array)
Sobat pintar sedikit banyak sudah tahu mengenai bahasa pemrograman, kan?
Untuk lebih meningkatkan kemampuan Sobat Pintar dalam elemen algoritma dan pemrograman, kita akan mempelajari konsep larik, karakter, dan string.
LARIK
Sebelumnya Sobat Pintar harus sudah mengetahui konsep variabel untuk menyimpan satu buah nilai dengan tipe data tertentu (variabel tunggal). Namun, bagaimana bila program yang akan dibuat harus mengolah jutaan data?
Untuk mengatasi hal itu, bahasa pemrograman memiliki larik atau array yang bisa digunakan untuk menyimpan himpunan data ke dalam satu nama variabel yang diberikan indeks. Indeks diberikan sebagai kode agar kita mengenali tempat untuk menyimpan nama variabel tersebut.
Penggunaan larik mirip dengan membuat variabel tunggal. Namun, kalian perlu memberikan informasi ukuran dari larik yang akan dibuat dan kalian perlu mengaksesnya dengan menggunakan indeks.
Terdapat berbagai macam cara untuk mengimplementasikan konsep larik ke dalam kode program, salah satunya dengan menggunakan vektor. Vektor merupakan pustaka bahasa pemrograman C++ yang dapat digunakan juga pada bahasa C. Vektor dibuat untuk menampung himpunan data yang ukurannya dinamis bergantung pada jumlah (atau ukuran) data yang disimpan di dalamnya.
Contoh bahasa pemrograman untuk membuat larik satu dimensi
Selain larik satu dimensi, kita juga bisa membuat larik dua dimensi, yaitu baris dan kolom (seperti pada matriks di matematika).
Berikut contoh bahasa pemrograman untuk membuat larik dua dimensi:
footer_v3
Bersama Aku Pintar temukan jurusan kuliah yang tepat
sesuai minat dan bakatmu.
Aku Pintar memiliki visi membuat pendidikan merata, mudah dijangkau, dan terjangkau dengan Program Journey Pintar yang merupakan sebuah program persiapan lengkap bagi siswa SMA/SMK/sederajat yang ingin masuk ke perguruan tinggi impiannya.
Kontak Kami
Grand Slipi Tower Lt. 42
Jl. S. Parman Kav 22-24
Jakarta Barat
© 2024 Aku Pintar. All Rights Reserved