Halaman

Sabtu, 19 September 2026

Dasar Pemrograman Python


MAIN MAPPING MATERI


ALGORITMA DALAM PEMROGRAMAN PYTHON

 

Berikut adalah materi algoritma tingkat menengah yang disusun secara ringkas, logis, dan mudah dipahami:

 

A.   Memahami Algoritma

1.   Memahami Konsep Berpikir Algoritma

Berpikir algoritma adalah kemampuan untuk memecahkan masalah melalui urutan instruksi yang terstruktur, logis, dan matematis. Di tingkat menengah, kamu tidak lagi sekadar membuat langkah asal-asalan, tetapi mulai memperhitungkan efisiensi dan batasan masalah. Algoritma yang baik harus memiliki awal yang jelas, akhir yang pasti, tidak ambigu (tidak bermakna ganda), dan selalu menghasilkan *output* yang sama jika diberikan *input* yang sama.

2.   Mengaplikasikan Berpikir Algoritma

Mengaplikasikan berpikir algoritma berarti menerjemahkan masalah di dunia nyata ke dalam tahapan komputasional. Hal ini membutuhkan strategi agar solusi yang dihasilkan tidak hanya berhasil, tetapi juga cepat dan hemat sumber daya (efisien).

Berikut adalah tahapan aplikasinya:

a.   Identifikasi Masalah: Menemukan akar permasalahan dan target yang ingin dicapai.

b.   Dekomposisi: Memecah masalah kompleks menjadi masalah-masalah kecil yang lebih mudah dikerjakan.

c.    Recognition (Mengenali pola) adalah tahap dalam berpikir komputasional ketika kita mencari kesamaan, kemiripan, atau pola yang berulang dari suatu masalah atau kumpulan data.

Sederhananya: “Mengenali pola = mencari sesuatu yang sama atau berulang agar masalah lebih mudah dipahami dan diselesaikan.”

d.   Abstraksi (Abstraction) adalah proses memilih dan mengambil informasi yang penting dari suatu masalah serta mengabaikan informasi yang tidak diperlukan, sehingga masalah menjadi lebih sederhana dan mudah diselesaikan.

Sederhananya: “Abstraksi = mengambil yang penting, mengabaikan yang tidak penting.”

e.    Penyusunan Logika: Merancang urutan instruksi yang sistematis untuk menyelesaikan tiap masalah kecil tersebut.

f.     Evaluasi Pemilihan Solusi: Membandingkan beberapa algoritma untuk memilih jalan mana yang paling singkat dan memiliki risiko kesalahan (*bug*) paling kecil.

 3.   Studi Kasus: Transfer Uang via Internet Banking

Situasi: Kamu diminta membeli buku secara online dan harus mentransfer pembayaran melalui aplikasi bank di smartphone. Bagaimana komputasi algoritma bekerja di balik layar?

Penerapan Langkah Algoritma:

§  Buka aplikasi dan lakukan otorisasi (Login menggunakan password atau sidik jari).

§  Pilih menu "Transfer Antar Rekening".

§  Ketik nomor rekening tujuan dan tekan "Cari".

§  Validasi: Sistem akan menampilkan nama pemilik rekening. Cek apakah nama sesuai. Jika salah, kembali ke langkah sebelumnya; jika benar, lanjut.

§  Masukkan jumlah nominal uang yang akan dikirim, lalu tekan "Lanjut".

§  Masukkan PIN transaksi rahasia sebagai persetujuan akhir.

§  Sistem memproses transfer dan mengeluarkan Output berupa resi digital.

Penjelasan Detail:

Algoritma sangat bergantung pada urutan. Jika kamu memasukkan PIN transaksi sebelum mengetik nomor rekening, sistem pasti menolak karena langkahnya tidak logis. Di tingkat menengah, kita juga memikirkan efisiensi: jika kamu menyimpan nomor rekening tersebut ke dalam "Daftar Favorit", kamu telah memotong dua langkah algoritma untuk transfer di masa depan, membuat prosesnya jauh lebih efisien.

 

B.   Memahami Dasar Koding Python

·       Python adalah bahasa pemrograman populer yang diciptakan oleh Guido van Rossum pada tahun 1991.

·       Python dirancang dengan sintaks yang menyerupai bahasa Inggris agar mudah dibaca dan dipahami oleh pemula.

·       Tanpa Titik Koma: Python menyelesaikan perintah menggunakan baris baru, tanpa memerlukan tanda titik koma (;) di akhir baris.

·       Tanpa Kurung Kurawal: Blok kode didefinisikan menggunakan indentasi (jarak menjorok ke dalam), bukan kurung kurawal ({}).

·       Case-Sensitive: Bersifat peka huruf besar-kecil. Huruf besar dan kecil dibedakan (contoh: print valid, sedangkan Print akan menghasilkan error).

1.   Praktik Dasar Python

Untuk mencetak atau menampilkan teks ke layar, Python menyediakan fungsi bawaan print(). Contoh penulisannya:

# Menampilkan teks ke layar
print("Selamat datang di SMK Semesta Bumiayu")
print("Belajar Python Sangat Menyenangkan")

2.   Tipe Data di Python & Konversi Data

Tipe data adalah media atau ruang penyimpanan informasi di komputer. Python memiliki berbagai macam tipe data:

·       Boolean: Menyatakan kebenaran, bernilai True (1) atau False (0).

·       String: Menyatakan karakter atau kalimat berupa huruf/angka yang diapit tanda petik tunggal (') atau ganda (").

·       Integer: Menyatakan bilangan bulat.

·       Float: Menyatakan bilangan desimal.

·       Hexadecimal: Menyatakan bilangan berbasis 16 (contoh: 0x9A).

·       Complex: Menyatakan pasangan angka real dan imajiner (contoh: 1 + 5j).

·       List: Untaian yang menyimpan berbagai tipe data yang isinya dapat diubah-ubah (menggunakan tanda kurung siku [...]).

·       Tuple: Untaian yang menyimpan berbagai tipe data yang isinya tidak dapat diubah-ubah (menggunakan tanda kurung biasa (...)).

·       Dictionary: Untaian yang berisi beragam tipe data berupa pasangan kunci dan nilai (key-value) menggunakan kurung kurawal {...}.

Contoh penulisan tipe data dan konversi data integer serta float:

status_aktif = True                              # Boolean
nama = "Budi"                                      # String
umur = 17                                            # Integer
berat = 60.5                                         # Float
hobi = ["Membaca", "Coding", 2026]      # List
koordinat = (10.5, 20.1)                      # Tuple
siswa = {"nama": "Ani", "kelas": "X"}     # Dictionary

#Konversi Data Integer dan Float
teks_angka = "100"
ubah_ke_int = int(teks_angka)  # Hasilnya integer 100

desimal = 7.89
dibulatkan = int(desimal)      # Hasilnya integer 7

angka_bulat = 50
ubah_ke_float = float(angka_bulat) # Hasilnya float 50.0

3.   Operator Aritmetika

Digunakan untuk melakukan operasi matematika pada program:

·       Penjumlahan (+)                  : Menjumlahkan nilai.

·       Pengurangan (-)                  : Mengurangi nilai.

·       Perkalian (*)                        : Mengalikan nilai.

·       Pembagian (/)                     : Membagi nilai.

·       Sisa Bagi / Modulo (%)       : Mendapatkan sisa pembagian.

·       Pangkat (**)                         : Memangkatkan nilai.

a = 10
b = 3

print("Penjumlahan:", a + b)        # 13
print("Pengurangan:", a - b)        # 7
print("Perkalian:", a * b)             # 30
print("Pembagian:", a / b)            # 3.3333...
print("Sisa Bagi:", a % b)            # 1
print("Pangkat:", a ** b)              # 1000

4.   Operator Perbandingan

Digunakan untuk membandingkan dua buah nilai, yang akan menghasilkan nilai kebenaran True atau False:

·       Sama dengan (==): Bernilai True jika kedua operan bernilai sama.

·       Tidak sama dengan (!=): Bernilai True jika kedua operan tidak sama.

·       Lebih besar dari (>): Bernilai True jika operan kiri lebih besar dari kanan.

·       Lebih kecil dari (<): Bernilai True jika operan kiri lebih kecil dari kanan.

·       Lebih besar dari sama dengan (>=): Bernilai True jika kiri lebih besar atau sama dengan kanan.

·       Lebih kecil dari sama dengan (<=): Bernilai True jika kiri lebih kecil atau sama dengan kanan.

x = 10
y = 5

print(x == y)     # False
print(x != y)      # True
print(x > y)       # True
print(x < y)       # False
print(x >= 10)   # True
print(y <= 4)     # False

5.   Percabangan (Branching)

Percabangan digunakan untuk mengambil keputusan berdasarkan kondisi tertentu:

·       if: Mengeksekusi kode jika kondisi benar.

·       if-else: Menyediakan jalur alternatif jika kondisi salah.

·       if-elif-else: Mengevaluasi banyak kondisi secara berurutan.

nilai = 80

if nilai >= 85:
    print("Predikat: A (Sangat Baik)")
elif nilai >= 75:
    print("Predikat: B (Baik)")
else:
    print("Predikat: C (Cukup)")

6.   Pengulangan (Looping)

Digunakan untuk menjalankan blok kode secara berulang-ulang:

·       while loop: Perulangan yang berjalan selama kondisi bernilai benar.

·       for loop: Perulangan untuk mengiterasi elemen dari suatu urutan atau range.

·       nested loop: Perulangan bersarang (loop di dalam loop).

# Contoh While Loop
i = 1
while i <= 3:
    print("Angka while ke-", i)
    i += 1

# Contoh For Loop
for angka in range(1, 4):
    print("Perulangan for ke-", angka)


# Contoh Nested Loop (Loop Bersarang)

print("Contoh Koordinat Baris dan Kolom:")

for baris in range(1, 4):         # Ini adalah Outer Loop (Loop Luar)

    for kolom in range(1, 4):  #Ini adalah Inner Loop (Loop Dalam)

        print("Baris", baris, "Kolom", kolom)

        print("-" * 20) # Garis pemisah setiap selesai 1 baris

7.   Komentar

Komentar adalah catatan atau keterangan di dalam skrip program yang tidak akan dieksekusi oleh komputer. Komentar sangat berguna untuk memberi penjelasan pada programmer lain mengenai fungsi suatu kode. Ditulis menggunakan tanda pagar (#) untuk satu baris, atau tanda petik tiga untuk baris ganda.

# Ini adalah komentar satu baris penjelas program
print("Halo Dunia")  # Menampilkan pesan sambutan

8.   Fungsi (Function)

Fungsi adalah sekumpulan blok kode terstruktur yang diberi nama agar dapat dipanggil dan digunakan kembali secara berulang tanpa menulis ulang kodenya. Diawali dengan kata kunci def.

def sapa_pengguna(nama):
    print("Halo, selamat pagi", nama)

# Memanggil fungsi
sapa_pengguna("Andi")
sapa_pengguna("Siti")

9.   Modul (Module)

Modul adalah file berisi sekumpulan kode atau fungsi Python siap pakai berformat .py yang dapat diimpor ke dalam program lain menggunakan perintah import.

import math  # Memanggil modul matematika bawaan Python

angka = 25
akar = math.sqrt(angka)  # Menggunakan fungsi akar kuadrat
print("Akar dari 25 adalah:", akar)

Contoh Soal / Latihan Praktik Python

1.   Variabel & Aritmetika: Buat program Python dengan variabel sisi = 12. Hitunglah luas persegi (sisi * sisi) dan keliling persegi (4 * sisi), lalu tampilkan hasilnya menggunakan print().

2.   Percabangan: Buat program penentu kategori usia: Jika di atas 60 tahun cetak "Lansia", jika di atas 17 tahun cetak "Dewasa", dan jika di bawah itu cetak "Remaja/Anak-anak".

3.   Perulangan (For Loop): Buat perulangan menggunakan fungsi range() yang dapat menampilkan deret angka genap mulai dari angka 2 sampai 10.

 

C.  Membuat Aplikasi Kalkulator & Debugging Dalam Python

Gambaran Umum: Membuat program tidak sekadar mengetik kode secara acak. Kita harus merencanakan fiturnya, menulis logikanya, menguji kesalahannya (debugging), dan pada akhirnya merancang tampilannya. Mari kita praktikkan tahap demi tahap membuat kalkulator!

Tahap 1: Perencanaan & Identifikasi Kebutuhan

Sebelum menulis kode, kita tentukan dulu apa yang harus bisa dilakukan oleh kalkulator ini.

       Kebutuhan: Aplikasi harus bisa melakukan Penjumlahan, Pengurangan, Perkalian, dan Pembagian.

       Alur Kerja: Aplikasi menampilkan menu → Pengguna memilih operasi matematika → Pengguna memasukkan dua angka → Komputer menghitung → Hasil ditampilkan.

Tahap 2: Implementasi Logika Dasar (Fungsi)

Kita mulai menulis kode dengan membuat blok fungsi (def) untuk tiap operasi matematika. Memecah kode menjadi fungsi-fungsi kecil membuat program lebih rapi.

 

# Fungsi Penjumlahan

def tambah(angka1, angka2):

    return angka1 + angka2

 

# Fungsi Pengurangan

def kurang(angka1, angka2):

    return angka1 - angka2

 

# Fungsi Perkalian

def kali(angka1, angka2):

    return angka1 * angka2

 

#Fungsi Pembagian

Def bagi(angka1, angka2)

Return angka1/angka2

 

Tahap 3: Praktik Debugging (Mencegah Error)

Kasus: Dalam matematika, kita tidak bisa membagi sebuah angka dengan angka Nol (0). Jika kita memaksanya di Python, program akan langsung mati (crash) dan memunculkan pesan bug berupa ZeroDivisionError.

Solusi Debugging: Kita harus "mengisolasi bug" dan "memperbaiki bug" dengan memberikan logika tambahan (percabangan if) pada fungsi pembagian. Jika angka kedua adalah 0, kita tampilkan pesan peringatan agar program tidak crash.

 

# Fungsi Pembagian yang sudah di-Debug

def bagi(angka1, angka2):

    if angka2 == 0:

        return "Error: Pembagian dengan nol tidak diperbolehkan!" # Mencegah bug

    else:

        return angka1 / angka2

 

Tahap 4: Membuat Antarmuka Teks & Meminta Input

Kita perlu membuat tampilan menu dan menggunakan perintah input() agar pengguna bisa memilih menu serta memasukkan angka yang ingin dihitung.

 

# Menampilkan menu

print("=== KALKULATOR SEDERHANA ===")

print("Pilih operasi matematika:")

print("1. Penjumlahan (+)")

print("2. Pengurangan (-)")

print("3. Perkalian (*)")

print("4. Pembagian (/)")

 

# Meminta input dari pengguna

pilihan = input("Masukkan pilihan (1/2/3/4): ")

 

Tahap 5: Percabangan (Mengambil Keputusan)

Kita menggunakan instruksi if-elif-else untuk mengeksekusi operasi berdasarkan pilihan yang dimasukkan pengguna.

 

# Mengecek apakah input valid (hanya boleh 1,2,3, atau 4)

if pilihan in ('1', '2', '3', '4'):

    # Meminta input angka dan diubah ke tipe Float (desimal)

    angka_pertama = float(input("Masukkan angka pertama: "))

    angka_kedua = float(input("Masukkan angka kedua: "))

 

    # Menjalankan fungsi sesuai pilihan

    if pilihan == '1':

        print("Hasil:", tambah(angka_pertama, angka_kedua))

    elif pilihan == '2':

        print("Hasil:", kurang(angka_pertama, angka_kedua))

    elif pilihan == '3':

        print("Hasil:", kali(angka_pertama, angka_kedua))

    elif pilihan == '4':

        print("Hasil:", bagi(angka_pertama, angka_kedua))

else:

    print("Input salah! Mohon pilih 1, 2, 3, atau 4.")

 

 

Tahap 6: Eksekusi Kode Penuh

Berikut adalah gabungan seluruh kode di atas. Kamu bisa menyalinnya ke editor kode Python (seperti VS Code atau IDLE) dan menjalankannya! Cobalah pilih menu ke-4 dan masukkan angka nol pada angka kedua untuk melihat hasil kerja debugging kita.

 

def tambah(angka1, angka2):

    return angka1 + angka2

 

def kurang(angka1, angka2):

    return angka1 - angka2

 

def kali(angka1, angka2):

    return angka1 * angka2

 

def bagi(angka1, angka2):

    if angka2 == 0:

        return "Error: Pembagian dengan nol tidak diperbolehkan!"

    else:

        return angka1 / angka2

 

print("=== KALKULATOR SEDERHANA ===")

print("Pilih operasi matematika:")

print("1. Penjumlahan (+)")

print("2. Pengurangan (-)")

print("3. Perkalian (*)")

print("4. Pembagian (/)")

 

pilihan = input("Masukkan pilihan (1/2/3/4): ")

 

if pilihan in ('1', '2', '3', '4'):

    angka_pertama = float(input("Masukkan angka pertama: "))

    angka_kedua = float(input("Masukkan angka kedua: "))

 

    if pilihan == '1':

        print("Hasil:", tambah(angka_pertama, angka_kedua))

    elif pilihan == '2':

        print("Hasil:", kurang(angka_pertama, angka_kedua))

    elif pilihan == '3':

        print("Hasil:", kali(angka_pertama, angka_kedua))

    elif pilihan == '4':

        print("Hasil:", bagi(angka_pertama, angka_kedua))

else:

    print("Input salah! Mohon pilih 1, 2, 3, atau 4.")

 


 

Langkah Selanjutnya: Beralih ke Tampilan Visual (GUI)

Kode yang baru saja kamu buat berjalan di "Terminal" atau layar teks hitam. Di dunia nyata, pengguna lebih suka aplikasi dengan tombol-tombol yang bisa ditekan dengan mouse.

Dalam pemrograman Python, merancang tampilan dengan tombol dan kotak teks disebut dengan membuat Graphical User Interface (GUI).

       Cara Manual: Kamu bisa merancang aplikasi kalkulatormu secara visual menggunakan perintah coding satu per satu menggunakan library bernama tkinter bawaan dari Python.

Cara Cepat: Kamu bisa menggunakan alat bantu atau framework bernama PyUIBuilder. Dengan alat ini, kamu cukup melakukan sistem drag-and-drop (geser dan lepas) elemen seperti tombol dan layar ke tempat yang kamu inginkan, sehingga proses desain menjadi sangat efisien dan mudah tanpa perlu banyak menulis kode.

Tidak ada komentar:

Posting Komentar