Algoritma Materi Informatika Kelas IX SMP
ALGORITMA
Algoritma berasal dari nama terakhir Muhammad bin Musa Al-Khawarizmi. Seorang ahli matematika terkenal dan penulis pada abad ke-8 dan 9 Masehi yang berasal dari Persia, Al-Khawarizmi adalah seorang guru Institut Matematika di Baghdad dan penulis buku “Kitab Al-Jabr wa Al-Muqabala”, yang berarti “Aturan Menyatukan dan Memisahkan”. Buku tersebut merupakan satu dari buku teks matematika paling awal, dan dari judul buku tersebut memberikan kita kata aljabar.
## 2. Ciri-Ciri, Sifat, dan Kriteria Algoritma
Menurut Donald E. Knuth, algoritma mempunyai ciri-ciri sebagai berikut.
a. Finiteness (keterbatasan), yaitu algoritma harus berakhir setelah melakukan sejumlah langkah proses.
b. Definiteness (kepastian), yaitu setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda (ambigu).
c. Input (masukan), yaitu algoritma memiliki nol atau lebih data masukan (input).
d. Output (keluaran), yaitu algoritma memberikan nol atau lebih hasil keluaran (output).
e. Effectiveness (efektivitas), yaitu algoritma harus efektif, langkah algoritma dikerjakan dalam waktu yang wajar.
Algoritma memiliki sifat-sifat sebagai berikut.
a. Tidak tergantung pada suatu bahasa pemrograman tertentu.
b. Tidak menggunakan simbol atau syntax dari suatu bahasa pemrograman tertentu.
c. Notasi-notasinya dapat digunakan untuk seluruh bahasa mana pun.
d. Dapat digunakan untuk merepresentasikan suatu urutan kejadian secara logis dan dapat diterapkan pada semua kejadian sehari-hari.
## 3. Teknik Penyajian Algoritma
Tulisan pernyataan instruksi algoritma haruslah menggunakan bahasa yang mudah dibaca dan dipahami oleh manusia. Penyajian penulisan algoritma ini dapat dilakukan menggunakan bahasa natural, pseudocode, dan flowchart.
### a. Bahasa Natural
Teknik penyajian algoritma dengan bahasa natural (struktur bahasa) adalah cara penyajian suatu algoritma yang paling sederhana dan paling mudah untuk dimengerti, karena algoritma ditulis dengan bahasa sehari-hari. Dengan menyajikan menggunakan struktur bahasa, penulisan algoritma tidak memiliki aturan baku. Algoritma dengan notasi kalimat deskriptif biasanya menggunakan berbagai kata kerja dalam bahasa manusia, seperti mulai, tulis, masukan, baca, tampilkan, jika, maka, ulangi.
Teknik penyajian algoritma menggunakan struktur bahasa banyak digunakan untuk algoritma yang pendek atau permasalahan yang sederhana.
Berikut contoh penyajian algoritma menggunakan struktur bahasa atau bahasa natural.
### Algoritma menghitung volume kerucut
1. Mulai.
2. Deklarasikan variabel pi, jari-jari, tinggi, dan volume.
3. Masukan nilai pi, yaitu 3,14.
4. Masukan nilai jari-jari.
5. Masukan nilai tinggi.
6. Hitung volume kerucut dengan cara 1/3 × pi × jari-jari × jari-jari × tinggi.
7. Tampilkan volume kerucut.
8. Selesai.
### b. Pseudocode
Pseudocode atau kode semu adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. Penyajian algoritma menggunakan pseudocode menggunakan bahasa yang lebih menyerupai bahasa pemrograman. Keuntungan menggunakan pseudocode adalah kemudahan dalam proses transisi ke bahasa pemrograman.
Secara umum, penulisan pseudocode terbagi dalam tiga bagian sebagai berikut.
1. Judul, berisikan judul dari suatu program yang dibuat.
2. Deklarasi, berisi deklarasi variabel yang diinisialisasikan di dalam suatu program.
3. Isi, berisi inti dari bagian program yang merupakan urutan pada suatu program di mana terdiri atas perintah program terstruktur baik berupa kondisional, perulangan, dan lainnya.
Berikut contoh penyajian algoritma menggunakan pseudocode.
### Algoritma Volume Kerucut
(Algoritma yang digunakan untuk menghitung volume kerucut)
Deklarasi
pi : integer
jari-jari : integer
tinggi : integer
volume : double
Deskripsi
pi = 3.14
read (jari-jari)
read (tinggi)
volume = 1/3 * pi * jari-jari * jari-jari * tinggi
write (volume)
end
### c. Flowchart
Flowchart atau diagram alir merupakan standar dasar pemodelan yang berfungsi untuk menggambarkan alur logika dalam algoritma pemrograman. Flowchart ditampilkan dalam bentuk diagram yang mana dapat merepresentasikan urutan dari operasi yang dilakukan dari awal sampai akhir untuk penyelesaian algoritma sehingga mendapatkan hasil.
Penggunaan flowchart akan membuat algoritma menjadi lebih mudah dimengerti, karena algoritma ditampilkan dalam simbol-simbol gambar yang terstandar. Tujuan penggunaan flowchart adalah untuk menggambarkan suatu tahapan penyelesaian masalah secara sederhana, ringkas, dan jelas dengan menggunakan simbol-simbol yang mudah dipahami.
Simbol-simbol standar flowchart yang sering dipergunakan beserta keterangannya dapat dilihat pada tabel berikut.
| Simbol | Nama | Keterangan |
| ----------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------ |
| → / garis penghubung | Arus Proses (Connecting Line) | Simbol yang berfungsi untuk menyatakan jalannya suatu proses. |
| ○ | Connector | Simbol yang menyatakan sambungan dari proses ke proses lainnya dalam halaman yang sama. |
| ⬇ / bentuk penghubung halaman | Offline Connector | Simbol yang menyatakan sambungan dari proses ke proses lainnya dalam halaman yang berbeda. |
| ▭ | Proses | Simbol yang menyatakan suatu proses yang dilakukan oleh komputer. |
Secara umum, flowchart menggunakan beberapa simbol yang memiliki fungsi berbeda-beda dalam menggambarkan alur suatu algoritma.
Pada halaman berikutnya terdapat simbol flowchart lainnya.
| Simbol | Nama | Keterangan |
| ------ | ------------ | -------------------------------------------------------------------------------------------------------------------- |
| ◇ | Decision | Simbol yang menunjukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban, yaitu ya atau tidak. |
| ⬡ | Preparation | Simbol yang digunakan untuk mempersiapkan variabel atau tempat penyimpanan suatu pengolahan data ataupun nilai awal. |
| ▱ | Terminal | Simbol yang menyatakan awal atau akhir suatu program. |
| ▱ | Input/Output | Simbol yang menyatakan proses input atau output tanpa tergantung jenis peralatannya. |
Berikut contoh penyajian algoritma menghitung volume kerucut menggunakan flowchart.
### Flowchart menghitung volume kerucut
Start
↓
Deklarasi variabel pi, jari-jari, tinggi, dan volume.
↓
pi = 3.14
↓
Input tinggi, jari-jari
↓
Volume = 1/3 × πr² × t
↓
Tampilkan volume
↓
End
---
# D. Struktur Data
## 1. Definisi Struktur Data
Struktur data dalam ilmu informatika adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien. Struktur data merupakan bagian penting yang wajib dipahami oleh seorang programmer.
Pemakaian struktur data yang tepat di dalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.
Tanpa pemahaman struktur data, programmer akan mengalami kesulitan ketika hendak membuat suatu program.


Komentar
Posting Komentar