Language:

Gönderen Konu: Python ile hesap makinesi (while ve if)  (Okunma sayısı 678 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

afmha

  • Devamlı

  • Çevrimdışı
  • ***

  • 150
  • Cinsiyet
    Bay

    Bay
    • Profili Görüntüle
Python ile hesap makinesi (while ve if)
« : 12 Temmuz 2016, 23:08:21 »
Merhabalar, yaklaşık 2 gün önce python derslerine başlamıştım. Şuan da kendim bir hesap makinesi yazdım.  :)

Kullanılan fonksiyonlar :
  • if / elif / else
  • While
  • print()
  • input()
  • isinstance()
  • float(input())
  • int(input())

Yapılabilecek işlemler :

  • [1] => Toplama (Tekrarlı)
  • [2] => Çıkartma (Tekrarlı)
  • [3] => Çarpma (Tekrarlı)
  • [4] => Bölme (Tekrarlı)
  • [5] => Kalan alma (Tekrarlı)
  • [99] => Çıkış

Kodlar:
Kod: [Seç]
# -*- coding: utf-8 -*-

print("Hoşgeldiniz. Hesap Makinesi v1.5 \n Yapımcı: AFMHA \n [email protected] | [url]https://www.facebook.com/afmha[/url]")

while (True):
    print("\n \n Lütfen seçim yapın:")
    secim = int(input("\n \n [1] => Toplam \n [2] => Çıkartma \n [3] => Bölme \n [4] => Kalan \n [5] => Çarpma \n [99] => Çıkış \n Seçim: "))
    if (secim == 1):
        sayi = input("Kaç kere kendini tekrar etsin: ")
        if isinstance(sayi, int):
            print("Değer alındı.")
        else:
            print("Değer bir doğal sayı girilmeliydi. Otomatik olarak '1' değeri atandı.")
            sayi = 1
        s1 = 0
        while s1 < sayi:
            sayi1 = float(input("1. Sayı: "))
            sayi2 = float(input("2. Sayı: "))
            sonuc = sayi1 + sayi2
            print(sonuc)
            s1 = s1 + 1

    elif (secim == 2):
        sayi = input("Kaç kere kendini tekrar etsin: ")
        if isinstance(sayi, int):
            print("Değer alındı.")
        else:
            print("Değer bir doğal sayı girilmeliydi. Otomatik olarak '1' değeri atandı.")
            sayi = 1
        s1 = 0
        while s1 < sayi:
            sayi1 = float(input("1. Sayı: "))
            sayi2 = float(input("2. Sayı: "))
            sonuc = sayi1 - sayi2
            print(sonuc)
            s1 = s1 + 1

    elif (secim == 3):
        sayi = input("Kaç kere kendini tekrar etsin: ")
        if isinstance(sayi, int):
            print("Değer alındı.")
        else:
            print("Değer bir doğal sayı girilmeliydi. Otomatik olarak '1' değeri atandı.")
            sayi = 1
        s1 = 0
        while s1 < sayi:
            sayi1 = float(input("1. Sayı: "))
            sayi2 = float(input("2. Sayı: "))
            sonuc = sayi1 / sayi2
            print(sonuc)
            s1 = s1 + 1

    elif (secim == 4):
        sayi = input("Kaç kere kendini tekrar etsin: ")
        if isinstance(sayi, int):
            print("Değer alındı.")
        else:
            print("Değer bir doğal sayı girilmeliydi. Otomatik olarak '1' değeri atandı.")
            sayi = 1
        s1 = 0
        while s1 < sayi:
            sayi1 = float(input("1. Sayı: "))
            sayi2 = float(input("2. Sayı: "))
            sonuc = sayi1 % sayi2
            print(sonuc)
            s1 = s1 + 1

    elif (secim == 5):
        sayi = input("Kaç kere kendini tekrar etsin: ")
        if isinstance(sayi, int):
            print("Değer alındı.")
        else:
            print("Değer bir doğal sayı girilmeliydi. Otomatik olarak '1' değeri atandı.")
            sayi = 1
        s1 = 0
        while s1 < sayi:
            sayi1 = float(input("1. Sayı: "))
            sayi2 = float(input("2. Sayı: "))
            sonuc = sayi1 * sayi2
            print(sonuc)
            s1 = s1 + 1
    elif (secim == 99):
        print("Çıkış işlemi gerçekleştiriliyor.")
        print(exit())
    else:
        print("Çıkış işlemi gerçekleştiriliyor.")
        print(exit())

Aynı zamanda tekrarli_hesap_makinesi.py dosyasını kendi github hesabıma da ekledim. Yorumlarınız bekliyorum. Sizce bunu daha ne kadar geliştirebilirim? neler ekleyebilirim?

Github Proje Sayfası
« Son Düzenleme: 12 Temmuz 2016, 23:12:18 Gönderen: afmha »
Pisi Linux = <3

fatihkaya41

  • Geliştirici

  • Çevrimdışı
  • *****

  • 183
    • Profili Görüntüle
Ynt: Python ile hesap makinesi (while ve if)
« Yanıtla #1 : 13 Temmuz 2016, 08:04:25 »
Örneğin sayıyı sıfıra bölmeye çalışıyorum oda ZeroDivisionError: float division by zero verip kapanıyor.
Daha sonra kullanıcı her zaman senin gibi düşünmez kim hesap makinesine yazı yazar diyorsun ama yazan olur :D. o zamanda ValueError: could not convert string to float: 'asda' hatası alıyoruz. Mümkün olduğunca kullanıcının yaptığı yanlışlar sonucu kapanmayıp kullanıcıya yanlış yaptığını doğrusunun nasıl yapılması gerektiğini bilgi olarak vermek daha mantıklı. Bunun dışında farklı işlemler için math modulune bakabilirsin. Birde yeni başlarken mümkün olduğunca farklı örnek yapmaya çalışmak ve derslerde anlatılan örnekleri okumadan kendi yönteminle yapmak mantıklı olabilir. Kolay gelsin

afmha

  • Devamlı

  • Çevrimdışı
  • ***

  • 150
  • Cinsiyet
    Bay

    Bay
    • Profili Görüntüle
Ynt: Python ile hesap makinesi (while ve if)
« Yanıtla #2 : 19 Temmuz 2016, 17:28:57 »
fatihkaya41 teşekkür ederim. :)
Pisi Linux = <3

 

Yukarı Çık & Back to Up