Algoritma Dan Pemrograman

1. Algoritma

Algoritma adalah urutan langkah yang logis, sistematis, dan terstruktur untuk menyelesaikan masalah. Algoritma dapat ditulis dalam bahasa sehari-hari, pseudocode, atau flowchart.

2. Pemrograman

Pemrograman adalah proses menerjemahkan algoritma atau solusi masalah ke bahasa pemrograman agar dapat dijalankan komputer.

Hubungannya:

Masalah → Analisis → Algoritma → Pseudocode/Flowchart → Program → Output.

3. Tujuan Mempelajari Algoritma

  • Melatih berpikir logis dan komputasional.
  • Memecahkan masalah secara sistematis.
  • Memahami cara kerja komputer.
  • Membuat aplikasi/program.
  • Mengotomatisasi pekerjaan.
  • Mengembangkan software dan sistem informasi.

4. Karakteristik Algoritma

Algoritma yang baik memiliki:

  • Input → menerima data.
  • Output → menghasilkan keluaran.
  • Definiteness → setiap langkah jelas dan tidak ambigu.
  • Finiteness → memiliki akhir.
  • Effectiveness → setiap langkah dapat dilakukan dan memiliki tujuan.

5. Tahapan Membuat Program

  1. Identifikasi masalah.
  2. Analisis Input – Process – Output.
  3. Membuat algoritma.
  4. Membuat pseudocode/flowchart.
  5. Implementasi ke bahasa pemrograman.
  6. Testing.
  7. Debugging.
  8. Dokumentasi dan pemeliharaan.

6. Tiga Struktur Dasar Algoritma

1. Runtunan (Sequence)
Instruksi dijalankan secara berurutan dari awal sampai akhir.

2. Percabangan (Selection)
Program memilih tindakan berdasarkan kondisi, misalnya if, if else, dan if elif else.

3. Perulangan (Looping)
Instruksi dijalankan berulang kali, misalnya for dan while.

7. Variabel dan Tipe Data

Variabel adalah tempat menyimpan data.

Tipe data dasar:

  • Integer → bilangan bulat, contoh 20
  • Float → bilangan desimal, contoh 170.5
  • String → teks, contoh "Budi"
  • Boolean → True atau False

8. Operator

Aritmatika: +, -, *, /, %, //, **

Perbandingan: ==, !=, >, <, >=, <=

Logika: and, or, not.

9. Input dan Output

Program dapat menerima data dari pengguna menggunakan input() dan menampilkan hasil menggunakan print().

Contoh:

nama = input("Masukkan nama: ")
print("Halo", nama)

10. Pseudocode dan Flowchart

Pseudocode adalah penulisan algoritma menggunakan bahasa sederhana yang menyerupai struktur program.

Flowchart adalah diagram untuk menggambarkan alur algoritma.

Simbol flowchart:

  • Oval → Start/End
  • Persegi → Process
  • Jajar genjang → Input/Output
  • Belah ketupat → Decision
  • Panah → Aliran

11. Fungsi dan List

Fungsi adalah kumpulan instruksi untuk melakukan tugas tertentu. Keuntungannya adalah kode bisa digunakan kembali dan program lebih terstruktur.

List/Array digunakan untuk menyimpan banyak data dalam satu variabel.

12. Searching dan Sorting

Searching digunakan untuk mencari data, contohnya:

  • Linear Search
  • Binary Search

Binary Search bekerja pada data yang sudah terurut dan memiliki kompleksitas sekitar O(log n).

Sorting digunakan untuk mengurutkan data, contohnya:

  • Bubble Sort
  • Selection Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort
  • Heap Sort.

13. Kompleksitas Algoritma

Kompleksitas digunakan untuk mengetahui efisiensi algoritma dalam menggunakan waktu dan sumber daya.

Notasi yang umum:
O(1), O(log n), O(n), O(n log n), O(n²), O(2ⁿ).

14. Debugging

Debugging adalah proses mencari dan memperbaiki kesalahan program.

Jenis kesalahan:

  • Syntax Error → kesalahan penulisan sintaks.
  • Runtime Error → kesalahan saat program dijalankan.
  • Logic Error → program berjalan tetapi hasilnya salah.

Komentar

Postingan populer dari blog ini

Tahapan membuat bubble sort, penjelasan for, while, do while dan neested loop dan penjelasan mengenai flowchart

rangkuman materi pertemuan ke 2

rangkuman Materi Algoritma & Pemrograman: Percabangan