Materi 1 Algoritma dan Pemrograman
1. Algoritma
Algoritma adalah urutan langkah yang logis, sistematis, terstruktur, dan memiliki akhir untuk menyelesaikan suatu masalah.
Contoh:
Input panjang & lebar → hitung luas → tampilkan hasil.
Algoritma dapat dibuat dalam bentuk:
Bahasa sehari-hari
Pseudocode
Flowchart
2. Pemrograman
Pemrograman adalah proses menerjemahkan algoritma ke dalam bahasa pemrograman agar dapat dijalankan oleh komputer.
Hubungannya:
Masalah → Analisis → Algoritma → Pseudocode/Flowchart → Program → Output
3. Tujuan Algoritma dan Pemrograman
Melatih berpikir logis.
Memecahkan masalah secara sistematis.
Memahami cara kerja komputer.
Membuat aplikasi/program.
Mengotomatisasi pekerjaan.
Mengembangkan kemampuan berpikir komputasional.
4. Karakteristik Algoritma
Algoritma yang baik memiliki:
Input → data masukan.
Output → hasil keluaran.
Definiteness → setiap langkah jelas.
Finiteness → memiliki akhir.
Effectiveness → setiap langkah dapat dilakukan.
5. Tahapan Membuat Program
Identifikasi masalah.
Analisis masalah.
Tentukan Input – Process – Output.
Buat algoritma.
Buat pseudocode/flowchart.
Implementasikan ke bahasa pemrograman.
Testing.
Debugging.
Dokumentasi dan pemeliharaan.
6. Tiga Struktur Dasar Algoritma
Runtunan
Perintah dijalankan secara berurutan.
Percabangan
Program memilih tindakan berdasarkan kondisi, misalnya:
if nilai >= 60:
print("LULUS")
else:
print("TIDAK LULUS")
Perulangan
Perintah dijalankan berulang kali menggunakan for atau while.
for i in range(1, 6):
print(i)
7. Variabel dan Tipe Data
Variabel adalah tempat menyimpan data.
Contoh:
nama = "Budi"
umur = 20
nilai = 85
Tipe data utama:
Integer→ bilangan bulat.Float→ bilangan desimal.String→ teks.Boolean→TrueatauFalse.
8. Operator
Aritmatika: +, -, *, /, %, //, **
Perbandingan: ==, !=, >, <, >=, <=
Logika: and, or, not
9. Input dan Output
Input digunakan untuk menerima data:
nama = input("Masukkan nama: ")
Output digunakan untuk menampilkan data:
print("Halo", nama)
10. Pseudocode dan Flowchart
Pseudocode adalah penulisan algoritma menggunakan bahasa sederhana yang menyerupai program.
Flowchart adalah diagram untuk menggambarkan alur algoritma.
Simbol penting flowchart:
Oval → Start/End
Persegi panjang → Process
Jajar genjang → Input/Output
Belah ketupat → Decision
Panah → Aliran
11. Fungsi
Fungsi adalah kumpulan instruksi untuk melakukan tugas tertentu.
Manfaat:
Program lebih terstruktur.
Kode dapat digunakan kembali.
Mengurangi pengulangan kode.
Lebih mudah dipelihara.
12. List/Array
Digunakan untuk menyimpan banyak data dalam satu variabel.
nilai = [80, 75, 90, 85, 70]
Data dapat diproses menggunakan perulangan.
13. Searching dan Sorting
Searching → mencari data.
Linear Search
Binary Search
Binary Search membutuhkan data yang sudah terurut dan memiliki kompleksitas sekitar O(log n).
Sorting → mengurutkan data.
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
Heap Sort
14. Kompleksitas Algoritma
Big O digunakan untuk menggambarkan efisiensi algoritma.
Yang penting dikenali:
O(1)→ konstanO(log n)→ logaritmikO(n)→ linearO(n log n)O(n²)→ kuadratikO(2ⁿ)→ eksponensial
15. Debugging
Debugging adalah proses mencari dan memperbaiki kesalahan program.
Jenis kesalahan:
Syntax Error → salah menulis sintaks.
Runtime Error → error saat program dijalankan.
Logic Error → program berjalan tetapi hasilnya salah.
Inti Materi yang Wajib Diingat
Algoritma = langkah-langkah menyelesaikan masalah.
Pemrograman = menerjemahkan algoritma menjadi program.
Pola dasar:
INPUT → PROSES → OUTPUT
Tiga struktur utama:
RUNTUNAN + PERCABANGAN + PERULANGAN
Dan alur membuat program:
MASALAH → ANALISIS → ALGORITMA → PROGRAM → TESTING → DEBUGGING
berikut adalah link github :
https://github.com/Firdaus2106/Algoritma-Pemrograman/tree/main/latihan%201
Komentar
Posting Komentar