Panduan Lengkap: Cara Membuat Kalkulator di Python

Python adalah bahasa pemrograman yang sangat populer dan serbaguna. Salah satu proyek pemula yang paling umum dan mendidik adalah membuat kalkulator sederhana. Proyek ini tidak hanya mengajarkan dasar-dasar sintaksis, tetapi juga konsep input/output, logika kondisional (if/elif/else), dan fungsi.

Representasi visual logika perhitungan.

Langkah 1: Membuat Fungsi Operasi Dasar

Langkah pertama dalam membuat kalkulator adalah mendefinisikan fungsi untuk setiap operasi dasar: penjumlahan, pengurangan, perkalian, dan pembagian. Menggunakan fungsi membuat kode lebih terstruktur dan mudah dibaca.


# Fungsi Penjumlahan
def tambah(x, y):
    return x + y

# Fungsi Pengurangan
def kurang(x, y):
    return x - y

# Fungsi Perkalian
def kali(x, y):
    return x * y

# Fungsi Pembagian
def bagi(x, y):
    if y == 0:
        return "Error: Tidak bisa dibagi nol"
    return x / y
            

Langkah 2: Mendapatkan Input dari Pengguna

Kalkulator membutuhkan dua angka dan operator yang ingin digunakan. Kita akan menggunakan fungsi input() untuk mendapatkan data ini dari pengguna dan mengonversinya menjadi tipe data numerik (float) agar bisa dihitung.


print("Pilih operasi:")
print("1. Tambah")
print("2. Kurang")
print("3. Kali")
print("4. Bagi")

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

# Memastikan input angka adalah float
try:
    angka1 = float(input("Masukkan angka pertama: "))
    angka2 = float(input("Masukkan angka kedua: "))
except ValueError:
    print("Input tidak valid. Harap masukkan angka.")
    exit()
            

Langkah 3: Implementasi Logika Pemilihan Operasi

Setelah mendapatkan pilihan dan angka, kita menggunakan struktur kondisional if-elif-else untuk memanggil fungsi yang sesuai berdasarkan input operator dari pengguna. Ini adalah inti dari logika kalkulator.


hasil = None # Inisialisasi variabel hasil

if pilihan == '1':
    hasil = tambah(angka1, angka2)
elif pilihan == '2':
    hasil = kurang(angka1, angka2)
elif pilihan == '3':
    hasil = kali(angka1, angka2)
elif pilihan == '4':
    hasil = bagi(angka1, angka2)
else:
    print("Pilihan operasi tidak valid.")

# Menampilkan hasil
if hasil is not None and not isinstance(hasil, str):
    print(f"\nHasil dari operasi {angka1} dan {angka2} adalah: {hasil}")
elif isinstance(hasil, str):
    # Menampilkan pesan error dari fungsi bagi
    print(f"\n{hasil}")
            
Tips Penting: Penanganan Error (Error Handling)

Dalam contoh pembagian (bagi(x, y)), kita menambahkan pemeriksaan jika y (pembagi) sama dengan nol. Dalam pemrograman nyata, menangani kasus seperti pembagian dengan nol sangat krusial untuk mencegah program berhenti secara tiba-tiba (crash). Penggunaan blok try-except pada input juga penting untuk memastikan pengguna memasukkan angka, bukan teks.

Menggabungkan Kode Menjadi Kalkulator Fungsional

Untuk membuat kalkulator yang dapat digunakan berulang kali tanpa harus menjalankan ulang skrip, kita bisa membungkus seluruh logika di dalam sebuah loop while. Ini akan memungkinkan pengguna melakukan perhitungan baru setelah hasil sebelumnya ditampilkan, hingga mereka memutuskan untuk keluar.


def kalkulator_utama():
    while True:
        print("\n--- Kalkulator Python Sederhana ---")
        print("Pilih operasi:")
        print("1. Tambah (+)")
        print("2. Kurang (-)")
        print("3. Kali (*)")
        print("4. Bagi (/)")
        print("5. Keluar")

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

        if pilihan == '5':
            print("Terima kasih telah menggunakan kalkulator.")
            break

        if pilihan in ('1', '2', '3', '4'):
            try:
                angka1 = float(input("Masukkan angka pertama: "))
                angka2 = float(input("Masukkan angka kedua: "))
            except ValueError:
                print("Input angka tidak valid. Silakan coba lagi.")
                continue

            if pilihan == '1':
                print(f"Hasil: {tambah(angka1, angka2)}")
            elif pilihan == '2':
                print(f"Hasil: {kurang(angka1, angka2)}")
            elif pilihan == '3':
                print(f"Hasil: {kali(angka1, angka2)}")
            elif pilihan == '4':
                result_bagi = bagi(angka1, angka2)
                print(f"Hasil: {result_bagi}")
        else:
            print("Pilihan tidak dikenal. Silakan masukkan angka antara 1 hingga 5.")

# Panggil fungsi utama untuk menjalankan kalkulator
# kalkulator_utama() # Hapus tanda '#' saat ingin menjalankan
            

Penutup

Membuat kalkulator di Python adalah fondasi yang sangat baik untuk memahami bagaimana logika program bekerja. Dari sini, Anda dapat mengembangkan proyek lebih lanjut, seperti menambahkan operasi eksponen, fungsi trigonometri, atau bahkan membangun antarmuka pengguna grafis (GUI) menggunakan pustaka seperti Tkinter atau PyQt. Intinya adalah menguasai input, pemrosesan (fungsi), dan output.