Python ile Hesap Makinesi Örneği Kodlaması
Bu yazımızda, Python ile basit bir “hesap makinesi” örneği kodladık. Bakınız:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
def topla(sayi1, sayi2): return sayi1 + sayi2 def cikar(sayi1, sayi2): return sayi1 - sayi2 def carp(sayi1, sayi2): return sayi1 * sayi2 def bol(sayi1, sayi2): if sayi2 == 0: return "Tanımsız (Bir sayıyı sıfıra bölemezsiniz)" return sayi1 / sayi2 def islem_secimi_goster(): islemler = ["+", "-", "*", "/"] for islem in islemler: print(islem) def kullanici_girdisi_al(): islem = input("Yapmak istediğiniz işlem tipini seçiniz: ") sayi1 = int(input("Birinci sayıyı giriniz: ")) sayi2 = int(input("İkinci sayıyı giriniz: ")) return islem, sayi1, sayi2 def hesap_makinesi(): islem_fonksiyonlari = { "+": topla, "-": cikar, "*": carp, "/": bol } devam = True while devam: islem_secimi_goster() secilen_islem, sayi1, sayi2 = kullanici_girdisi_al() if secilen_islem in islem_fonksiyonlari: sonuc = islem_fonksiyonlari[secilen_islem](sayi1, sayi2) print(f"{sayi1} {secilen_islem} {sayi2} = {sonuc}") else: print("Geçersiz işlem seçimi!") devam_mi = input("Yeni bir işlem yapmak istiyor musunuz? ('Evet' ya da 'Hayır'): ") if devam_mi.lower() != "evet": devam = False hesap_makinesi() |
Yukarıdaki örneğimizde bir hesap makinesi uygulaması oluşturduk. Öncelikle, topla
, cikar
, carp
ve bol
adında temel matematiksel işlemleri gerçekleştiren dört fonksiyon tanımladık. Tabii bol
fonksiyonunda, bir sayının sıfıra bölünüp bölünmediğini kontrol eden bir if koşulu yazdık. Zira bölünen sayı sıfırsa, “Tanımsız” mesajını döndürdüğü için bir sayının sıfıra bölünmesi durumunda oluşabilecek hataları önlemiş oluyoruz.
Kullanıcıya sunulan işlem seçeneklerini göstermek için islem_secimi_goster
fonksiyonunu tanımladık Bu fonksiyonun içinde for döngüsü ile liste halinde tutulmuş işlemleri döngüye aldık. Daha sonra kullanici_girdisi_al
fonksiyonu ile kullanıcının hangi işlemi yapmak istediğini ve bu işlem için gereken iki sayıyı girmesini sağlıyoruz.
Ana fonksiyonumuz olan hesap_makinesi
içerisinde, kullanıcının seçtiği işleme göre ilgili fonksiyonu çağırmak için bir islem_fonksiyonlari
sözlüğü tanımladık. Kullanıcıdan alınan işlem seçeneği bu sözlük içerisinde aranıyor ve eğer sözlükte bu işlem mevcutsa ilgili fonksiyon çağrılarak sonuç ekrana yazdırılıyor. Eğer kullanıcı geçerli olmayan bir işlem girerse, “Geçersiz işlem seçimi!” uyarısı veriliyor. İşlemin devam etmesi için while döngüsü kullandık. Her işlem sonrasında, kullanıcının devam edip etmek istemediğini sormak için bir if
koşulu kullanılıyor. Eğer kullanıcı devam etmek istemezse program sonlanıyor.
Kodu çalıştırmak için: Trinket