Calculator Program in Python#
Pada tutorial ini, kita akan membuat program kalkulator sederhana menggunakan Python. Program kalkulator ini nantinya akan mampu melakukan operasi aritmatika sederhana.
Kita akan menggunakan operator matematika, variabel, kondisi, fungsi.
Langkah 1 - Mendapatkan input dari user#
User harus memasukkan angka-angka untuk dioperasikan oleh program kalkulator kita. Untuk menerima masukan dari user, kita akan menggunakan fungsi built-in input()
.
angka_1 = input("Masukkan angka pertama: ")
angka_2 = input("Masukkan angka kedua : ")
Perlu diingat bahwa fungsi input()
menerima dan mengeluarkan tipe data string
. Untuk program kalkulator kita, kita harus menggunakan angka. Karena itu kita perlu melakukan casting ke tipe data int
.
angka_1 = int(input("Masukkan angka pertama: "))
angka_2 = int(input("Masukkan angka kedua : "))
Kita bisa mengecek tipe data variabel-variabel di atas menggunakan fungsi built-in type
.
print(type(angka_1))
print(type(angka_2))
<class 'int'>
<class 'int'>
Langkah 2 - Menambahkan operator matematika#
Selanjutnya, kita akan membahkan 4 operasi matematika sederhana:
+
untuk penjumlahan-
untuk pengurangan*
untuk perkalian/
untuk pembagian
# Addition
print("{} + {} = ".format(angka_1, angka_2))
print(angka_1 + angka_2)
# Subtraction
print("{} - {} = ".format(angka_1, angka_2))
print(angka_1 - angka_2)
# Multiplication
print("{} * {} = ".format(angka_1, angka_2))
print(angka_1 * angka_2)
# Division
print("{} / {} = ".format(angka_1, angka_2))
print(angka_1 / angka_2)
2 + 3 =
5
2 - 3 =
-1
2 * 3 =
6
2 / 3 =
0.6666666666666666
Langkah 3 - Menambahkan kondisi#
Tujuan dari program kalkulator adalah untuk memungkinkan user memilih operasi matematika yang mereka inginkan. Kita akan menambahkan informasi operasi matematika yang didukung oleh program untuk dipilih oleh user.
operasi = input(
"""Operasi matematika yang didukung:
+ untuk penjumlahan
- untuk pengurangan
* untuk perkalian
/ untuk pembagian
Silahkan pilih operasi matematika:"""
)
Setelah kamu menjalankan blok kode diatas, tidak ada yang berubah pada program kita, karena kita belum memproses operasi yang diinputkan oleh user. Untuk itu, kita perlu menambahkan conditional statements. Kita akan menggunakan if
untuk operasi penjumlahan, dilanjutkan dengan 3 elif
untuk operasi-operasi lainnya, dan else
untuk operasi yang tidak didukung.
if operasi == "+":
print("{} + {} = ".format(angka_1, angka_2))
print(angka_1 + angka_2)
elif operasi == "-":
print("{} - {} = ".format(angka_1, angka_2))
print(angka_1 - angka_2)
elif operasi == "*":
print("{} * {} = ".format(angka_1, angka_2))
print(angka_1 * angka_2)
elif operasi == "/":
print("{} / {} = ".format(angka_1, angka_2))
print(angka_1 / angka_2)
else:
print("Operasi yang kamu masukkan tidak didukung. Harap coba sekali lagi.")
2 + 3 =
5
Langkah 4 - Menggunakan fungsi#
Agar bisa menjalankan program terus-menerus sesuai keinginan user, kita perlu mendefinisikan beberapa fungsi. Pertama, kita bisa memasukkan semua kode yang sudah kita tulis ke fungsi calculate()
.
# Define calculate function
def calculate():
angka_1 = int(input("Masukkan angka pertama: "))
angka_2 = int(input("Masukkan angka kedua : "))
operasi = input(
"""Operasi matematika yang didukung:
+ untuk penjumlahan
- untuk pengurangan
* untuk perkalian
/ untuk pembagian
Silahkan pilih operasi matematika: """
)
if operasi == "+":
print("{} + {} = ".format(angka_1, angka_2))
print(angka_1 + angka_2)
elif operasi == "-":
print("{} - {} = ".format(angka_1, angka_2))
print(angka_1 - angka_2)
elif operasi == "*":
print("{} * {} = ".format(angka_1, angka_2))
print(angka_1 * angka_2)
elif operasi == "/":
print("{} / {} = ".format(angka_1, angka_2))
print(angka_1 / angka_2)
else:
print("Operasi yang kamu masukkan tidak didukung. Harap coba sekali lagi.")
# Call calculate() function to execute it
calculate()
3 + 4 =
7
Selanjutnya, kita akan membuat fungsi kedua yang bertugas untuk menanyakan apakah user ingin melakukan kalkulasi lagi atau selesai.
def again():
lagi = input("Apakah kamu ingin melakukan kalkulasi lagi (Y/T)?")
if lagi.upper() == "Y":
calculate()
elif lagi.upper() == "T":
print("Terima kasih. Sampai jumpa 👋")
else:
again()
Selanjutnya, kamu perlu mengubah fungsi calculate()
yang telah kamu buat selanjutnya agar mengeksekusi fungsi again()
setelah selesai melakukan operasi kalkulasi.
Kode keseluruhan program kalkulator Python kita akan menjadi seperti di bawah ini:
def calculate():
angka_1 = int(input("Masukkan angka pertama: "))
angka_2 = int(input("Masukkan angka kedua : "))
operasi = input(
"""Operasi matematika yang didukung:
+ untuk penjumlahan
- untuk pengurangan
* untuk perkalian
/ untuk pembagian
Silahkan pilih operasi matematika: """
)
if operasi == "+":
print("{} + {} = ".format(angka_1, angka_2))
print(angka_1 + angka_2)
elif operasi == "-":
print("{} - {} = ".format(angka_1, angka_2))
print(angka_1 - angka_2)
elif operasi == "*":
print("{} * {} = ".format(angka_1, angka_2))
print(angka_1 * angka_2)
elif operasi == "/":
print("{} / {} = ".format(angka_1, angka_2))
print(angka_1 / angka_2)
else:
print("Operasi yang kamu masukkan tidak didukung. Harap coba sekali lagi.")
# Jalankan fungsi again() untuk menanyakan user apakah mau melakukan kalkulasi lagi
# atau selesai.
again()
def again():
lagi = input("Apakah kamu ingin melakukan kalkulasi lagi (Y/T)?")
if lagi.upper() == "Y":
calculate()
elif lagi.upper() == "T":
print("Terima kasih. Sampai jumpa 👋")
else:
again()
calculate()
5 + 5 =
10
100 * 100 =
10000
Terima kasih. Sampai jumpa 👋
Kesimpulan#
Pada tutorial ini kamu telah belajar membuat kalkulator sederhana menggunakan Python. Kamu telah mempraktekkan bagaimana mendapatkan input dari user, mengubah tipe data string
ke int
, melakukan operasi matematika, membuat kondisi percabangan logika, dan menggunakan fungsi.
Latihan#
Pindahkan source code dari notebook ini ke satu .py file
Berikan dukungan untuk tipe data
float
Tambahkan operasi pangkat
Tambahkan penangan exception untuk
ZeroDivisionError