Materi pengenalan algoritma dan pemrograman PERTEMUAN 1
Rangkuman Algoritma dan Pemrograman
1. Algoritma
Algoritma adalah urutan langkah yang logis,
sistematis, dan terstruktur untuk menyelesaikan suatu masalah.
Contoh:
Menghitung luas persegi panjang → masukkan panjang dan lebar
→ hitung luas → tampilkan hasil.
Algoritma dapat ditulis dalam bahasa sehari-hari,
pseudocode, atau flowchart.
2. Pemrograman
Pemrograman adalah proses menerjemahkan algoritma ke
dalam bahasa pemrograman agar dapat dijalankan oleh komputer.
Alurnya:
Masalah
↓
Analisis
↓
Algoritma
↓
Pseudocode / Flowchart
↓
Program
↓
Output
3. Tujuan Algoritma dan Pemrograman
Mempelajari algoritma dan pemrograman bertujuan untuk:
- Melatih
berpikir logis dan komputasional.
- Memecahkan
masalah secara sistematis.
- Membuat
program dan aplikasi.
- Mengotomatisasi
pekerjaan.
- Memahami
cara kerja komputer.
4. Ciri-Ciri Algoritma yang Baik
Algoritma harus memiliki:
- Input
→ data yang masuk.
- Output
→ hasil yang keluar.
- Definiteness
→ setiap langkah jelas.
- Finiteness
→ memiliki akhir.
- Effectiveness
→ setiap langkah dapat dilakukan dan berguna.
5. Tahapan Membuat Program
Identifikasi Masalah
↓
Analisis Input, Proses, Output
↓
Membuat Algoritma
↓
Pseudocode / Flowchart
↓
Implementasi Program
↓
Testing
↓
Debugging
↓
Dokumentasi & Pemeliharaan
6. Tiga Struktur Dasar Algoritma
A. Runtunan (Sequence)
Instruksi dijalankan secara berurutan.
panjang = 10
lebar = 5
luas = panjang * lebar
print(luas)
B. Percabangan (Selection)
Digunakan untuk memilih berdasarkan kondisi.
if nilai >= 60:
print("LULUS")
else:
print("TIDAK
LULUS")
Jenisnya:
- if
- if-else
- if-elif-else
- nested
if
C. Perulangan (Looping)
Digunakan untuk menjalankan perintah berulang kali.
for i in range(1, 6):
print(i)
Jenis utama:
- for
- while
7. Variabel dan Tipe Data
Variabel adalah tempat menyimpan data.
nama = "Budi"
umur = 20
tinggi = 170.5
lulus = True
Tipe data dasar:
- int
→ bilangan bulat
- float
→ bilangan desimal
- str
→ teks
- bool
→ True / False
Struktur data:
- list
- tuple
- dictionary
- set
8. Operator
Aritmatika
+ - *
/ % // **
Digunakan untuk operasi matematika.
Perbandingan
== != >
< >= <=
Hasilnya berupa True atau False.
Logika
and
or
not
Digunakan untuk menggabungkan kondisi.
9. Input dan Output
Input digunakan untuk menerima data dari pengguna:
nama = input("Nama: ")
Output digunakan untuk menampilkan hasil:
print("Halo", nama)
Perlu diingat, input() menghasilkan data bertipe string,
sehingga angka biasanya perlu dikonversi:
umur = int(input("Umur: "))
10. Pseudocode dan Flowchart
Pseudocode
Penulisan algoritma menggunakan bahasa sederhana yang
menyerupai program.
Flowchart
Diagram untuk menggambarkan alur algoritma.
Simbol penting:
Oval →
Mulai / Selesai
Persegi →
Proses
Jajar Genjang →
Input / Output
Belah Ketupat →
Percabangan / Keputusan
Panah →
Alur
11. Fungsi
Fungsi adalah sekumpulan instruksi untuk melakukan
tugas tertentu dan dapat digunakan kembali.
def luas(panjang, lebar):
return panjang *
lebar
Manfaat fungsi:
- Program
lebih terstruktur.
- Mengurangi
pengulangan kode.
- Kode
dapat digunakan kembali.
- Lebih
mudah dipelihara.
12. List / Array
Digunakan untuk menyimpan banyak data.
nilai = [80, 75, 90, 85]
Index dimulai dari 0.
print(nilai[0])
List juga dapat diproses menggunakan perulangan.
13. Searching dan Sorting
Searching
Digunakan untuk mencari data.
Contoh:
- Linear
Search
- Binary
Search
Sorting
Digunakan untuk mengurutkan data.
Contoh:
- Bubble
Sort
- Selection
Sort
- Insertion
Sort
- Merge
Sort
- Quick
Sort
- Heap
Sort
14. Kompleksitas Algoritma
Kompleksitas menunjukkan efisiensi algoritma,
terutama dari sisi waktu dan penggunaan sumber daya.
Notasi yang umum:
O(1) → Konstan
O(log n) →
Logaritmik
O(n) → Linear
O(n log n) → Linear-logaritmik
O(n²) → Kuadratik
O(2ⁿ) →
Eksponensial
Semakin efisien algoritma, semakin baik kemampuannya
menangani data dalam jumlah besar.
15. Debugging
Debugging adalah proses mencari dan memperbaiki
kesalahan dalam program.
Jenis kesalahan:
- Syntax
Error → salah penulisan kode.
- Runtime
Error → error saat program dijalankan.
- Logic
Error → program berjalan tetapi hasilnya salah.
Yang paling penting untuk dipahami:
ALGORITMA
= Langkah-langkah menyelesaikan masalah
PEMROGRAMAN
= Menerjemahkan algoritma menjadi kode
Konsep dasar pemrograman:
INPUT → PROSES → OUTPUT
Tiga struktur utama:
RUNTUNAN
↓
PERCABANGAN
↓
PERULANGAN
Kemudian dikembangkan dengan:
Variabel
Tipe Data
Operator
Fungsi
List
Searching
Sorting
Kompleksitas
Debugging
Singkatnya: belajar pemrograman bukan hanya belajar menulis
kode, tetapi belajar bagaimana memecahkan masalah secara logis dan sistematis
lalu menerjemahkannya menjadi program.
berikut link guthub nya:
https://github.com/mraflipaqihatur/Algoritma-Pemrograman/tree/main/LATIHAN%201
Komentar
Posting Komentar