Daftar Isi
Algoritma dan Pemrograman
1. Pengertian Algoritma dan Pemrograman
A. Algoritma
Algoritma adalah sekumpulan langkah atau prosedur yang digunakan untuk menyelesaikan suatu masalah secara sistematis dan logis. Algoritma harus memiliki karakteristik berikut:
- Jelas (Definiteness): Setiap langkah harus didefinisikan dengan jelas.
- Terbatas (Finiteness): Algoritma harus memiliki akhir.
- Memiliki Input dan Output: Harus menerima masukan dan menghasilkan keluaran.
- Efektif (Effectiveness): Harus dapat dijalankan dengan sumber daya yang tersedia.
- Terstruktur: Langkah-langkahnya tersusun secara logis.
B. Pemrograman
Pemrograman adalah proses menulis dan menjalankan kode program menggunakan bahasa pemrograman untuk menginstruksikan komputer melakukan tugas tertentu sesuai dengan algoritma yang telah dirancang.
2. Struktur Dasar Algoritma
Algoritma memiliki tiga struktur dasar utama:
- Urutan (Sequence): Langkah-langkah yang dieksekusi secara berurutan.
- Percabangan (Selection): Pemilihan kondisi (IF-ELSE, SWITCH).
- Perulangan (Looping): Perintah yang dieksekusi secara berulang (FOR, WHILE, DO-WHILE).
Contoh Pseudocode untuk Struktur Dasar
1. Urutan (Sequence)
Mulai
Masukkan angka1
Masukkan angka2
Jumlahkan angka1 dan angka2
Tampilkan hasil
Selesai
2. Percabangan (Selection)
Mulai
Masukkan angka
Jika angka > 0 maka
Tampilkan "Bilangan Positif"
Jika tidak
Tampilkan "Bilangan Negatif atau Nol"
Selesai
3. Perulangan (Looping)
Mulai
Ulangi dari i = 1 sampai i = 10
Tampilkan i
Selesai
3. Representasi Algoritma
A. Pseudocode
Pseudocode adalah cara menuliskan algoritma menggunakan bahasa yang mirip dengan bahasa manusia sebelum dikonversi ke kode program.
B. Flowchart
Flowchart adalah diagram alur yang menggambarkan langkah-langkah algoritma menggunakan simbol standar:
- Oval: Start/End
- Parallelogram: Input/Output
- Persegi panjang: Proses
- Belah ketupat: Percabangan (kondisi)
4. Struktur Data dalam Pemrograman
Struktur data adalah cara menyimpan dan mengatur data dalam program.
- Variabel dan Tipe Data
- Integer (int): Bilangan bulat
- Float (float): Bilangan desimal
- Character (char): Karakter tunggal
- String: Kumpulan karakter
- Boolean: True atau False
- Array
Array adalah kumpulan data dengan tipe yang sama. Contoh:angka = [10, 20, 30, 40] print(angka[2]) # Output: 30
- Struct (Dalam C/C++)
Struct digunakan untuk mengelompokkan beberapa tipe data:struct Mahasiswa { char nama[50]; int umur; };
5. Algoritma dalam Bahasa Pemrograman
A. Bahasa Pemrograman Populer
Bahasa pemrograman adalah kumpulan instruksi atau sintaks yang digunakan untuk memberi perintah kepada komputer agar menjalankan tugas tertentu. Bahasa ini digunakan oleh programmer untuk membuat perangkat lunak, aplikasi, situs web, dan sistem lainnya.
B. Jenis-Jenis Bahasa Pemrograman
Bahasa pemrograman dapat dikategorikan berdasarkan tingkat abstraksi dan paradigma pemrogramannya.
1. Berdasarkan Tingkat Abstraksi
Bahasa Mesin (Machine Language)
- Berupa kode biner (0 dan 1) yang langsung dipahami oleh komputer.
- Contoh: Kode biner untuk prosesor tertentu
Bahasa Tingkat Rendah (Low-Level Language)
- Berupa instruksi dalam bentuk assembly language yang masih dekat dengan bahasa mesin.
- Contoh: Bahasa Assembly (ASM)
MOV AX, 5 ; Memindahkan angka 5 ke register AX
Bahasa Tingkat Menengah (Middle-Level Language)
- Memiliki kombinasi fitur bahasa tingkat rendah dan tinggi.
- Contoh: C, C++
#include <stdio.h>
int main() {
printf("Hello, World!");
return 0;
}
Bahasa Tingkat Tinggi (High-Level Language)
- Lebih mudah dipahami manusia, tidak bergantung pada arsitektur hardware tertentu.
- Contoh: Python, Java, JavaScript, PHP, C#, Ruby
print("Hello, World!")
B. Contoh Program dalam Python
Contoh 1: Program Penjumlahan Dua Bilangan
# Input dua angka
a = int(input("Masukkan angka pertama: "))
b = int(input("Masukkan angka kedua: "))
# Proses penjumlahan
hasil = a + b
# Output hasil
print("Hasil penjumlahan:", hasil)
Contoh 2: Percabangan IF-ELSE
angka = int(input("Masukkan sebuah angka: "))
if angka > 0:
print("Bilangan positif")
elif angka < 0:
print("Bilangan negatif")
else:
print("Nol")
Contoh 3: Perulangan FOR
for i in range(1, 6):
print("Angka ke-", i)
6. Paradigma Pemrograman
Paradigma pemrograman adalah cara berpikir dalam menyusun program:
- Pemrograman Prosedural: Menggunakan prosedur dan fungsi. Contoh: C, Pascal.
- Pemrograman Berorientasi Objek (OOP): Berbasis objek dan kelas. Contoh: Java, Python.
- Pemrograman Fungsional: Fokus pada fungsi. Contoh: Haskell, Lisp.
7. Studi Kasus dan Penyelesaian Masalah
Studi Kasus: Membuat program menentukan bilangan ganjil atau genap.
Algoritma:
- Masukkan sebuah bilangan.
- Jika bilangan habis dibagi 2, maka bilangan genap.
- Jika tidak, maka bilangan ganjil.
- Tampilkan hasilnya.
Implementasi dalam Python:
angka = int(input("Masukkan angka: "))
if angka % 2 == 0:
print("Bilangan Genap")
else:
print("Bilangan Ganjil")
8. Kompleksitas Algoritma
Kompleksitas algoritma mengukur efisiensi waktu dan ruang (memori) suatu algoritma.
- Notasi Big O: O(1), O(n), O(log n), O(n²), dll.
- Tujuan: Memilih algoritma yang paling optimal dalam penyelesaian masalah.
Kesimpulan
- Algoritma adalah langkah-langkah sistematis dalam menyelesaikan masalah.
- Pemrograman adalah implementasi algoritma menggunakan bahasa pemrograman.
- Struktur dasar algoritma terdiri dari urutan, percabangan, dan perulangan.
- Struktur data meliputi variabel, array, dan struct.
- Bahasa pemrograman yang sering digunakan antara lain Python, C, dan Java.
- Kompleksitas algoritma digunakan untuk menilai efisiensi kode program.
Tinggalkan Balasan
Anda harus masuk untuk berkomentar.