Advanced Calculator Nedir?
Advanced Calculator (Gelişmiş Hesap Makinesi), kullanıcılara çeşitli matematiksel işlemleri gerçekleştirme imkanı veren bir uygulamadır. Temel aritmetik işlemlerinin yanı sıra, karekök, üs alma ve trigonometri gibi daha gelişmiş işlemleri de destekler. Bu tür uygulamalar, hesaplama yeteneklerini genişletmek ve matematiksel becerileri geliştirmek için kullanılır.
Proje Hedefleri ve Öğrenci Faydaları
Bu proje ile öğrenciler, temel Python bilgilerini kullanarak basit ve fonksiyonel programlar geliştirme becerilerini pekiştireceklerdir. Ayrıca, kullanıcı etkileşimi ve matematiksel hesaplama konularında deneyim kazanacaklardır.
Projenin Hedef Çıktıları
Temel Python yapıları ve kontrol akışlarını kullanarak bir hesap makinesi uygulaması oluşturma.
Kullanıcıdan veri alma ve bu verileri işleyerek hesaplama işlemlerini yönetme.
Fonksiyonlar yardımıyla daha modüler ve okunabilir kod yazma.
Projenin Adım Adım Görevleri
Kullanıcıdan işlem türünü ve gerekli verileri alma.
İşlemi gerçekleştirme ve sonucu hesaplama.
Sonucu ekrana yazdırma.
Fonksiyonlar kullanarak kodu daha modüler hale getirme.
Fonksiyonsuz Çözüm
Adım 1: Kullanıcıdan İşlem Türünü ve Gerekli Verileri Alma
İlk adımda, kullanıcıdan yapılacak işlemi ve gerekli verileri alınacaktır.
# Kullanıcıdan işlem türünü ve gerekli verileri alma
print("İşlem türünü seçin:")
print("1. Toplama")
print("2. Çıkarma")
print("3. Çarpma")
print("4. Bölme")
print("5. Karekök")
print("6. Üs Alma")
print("7. Sinüs")
print("8. Kosinüs")
print("9. Tanjant")
islem_turu = int(input("İşlem türünü girin (1-9): "))
if islem_turu in [1, 2, 3, 4, 6]:
sayi1 = float(input("Birinci sayıyı girin: "))
sayi2 = float(input("İkinci sayıyı girin: "))
elif islem_turu == 5:
sayi1 = float(input("Sayıyı girin: "))
elif islem_turu in [7, 8, 9]:
import math
derece = float(input("Dereceyi girin: "))
radyan = math.radians(derece)
Bu kod parçası, kullanıcıdan yapılacak işlemi ve gerekli verileri alır.
Adım 2: İşlemi Gerçekleştirme ve Sonucu Hesaplama
İkinci adımda, kullanıcı tarafından seçilen işlem gerçekleştirilir ve sonucu hesaplanır.
# İşlemi gerçekleştirme ve sonucu hesaplama
if islem_turu == 1:
sonuc = sayi1 + sayi2
elif islem_turu == 2:
sonuc = sayi1 - sayi2
elif islem_turu == 3:
sonuc = sayi1 * sayi2
elif islem_turu == 4:
if sayi2 != 0:
sonuc = sayi1 / sayi2
else:
sonuc = "Tanımsız (0'a bölme)"
elif islem_turu == 5:
sonuc = math.sqrt(sayi1)
elif islem_turu == 6:
sonuc = sayi1 ** sayi2
elif islem_turu == 7:
sonuc = math.sin(radyan)
elif islem_turu == 8:
sonuc = math.cos(radyan)
elif islem_turu == 9:
sonuc = math.tan(radyan)
Bu kod parçası, kullanıcı tarafından seçilen işlemi gerçekleştirir ve sonucu hesaplar.
Adım 3: Sonucu Ekrana Yazdırma
Üçüncü adımda, hesaplanan sonuç ekrana yazdırılacaktır.
# Sonucu ekrana yazdırma
print("Sonuç:", sonuc)
Bu kod parçası, hesaplanan sonucu ekrana yazdırır.
Fonksiyonlarla Çözüm
Adım 1: Kullanıcıdan İşlem Türünü ve Gerekli Verileri Alma Fonksiyonu
İlk adımda, kullanıcıdan yapılacak işlemi ve gerekli verileri alınacaktır.
def veri_al(islem_turu):
"""Kullanıcıdan gerekli verileri alır."""
if islem_turu in [1, 2, 3, 4, 6]:
sayi1 = float(input("Birinci sayıyı girin: "))
sayi2 = float(input("İkinci sayıyı girin: "))
return sayi1, sayi2
elif islem_turu == 5:
sayi1 = float(input("Sayıyı girin: "))
return sayi1, None
elif islem_turu in [7, 8, 9]:
import math
derece = float(input("Dereceyi girin: "))
radyan = math.radians(derece)
return radyan, None
Bu fonksiyon, kullanıcıdan gerekli verileri alır ve döndürür.
Adım 2: İşlemi Gerçekleştirme ve Sonucu Hesaplama Fonksiyonu
İkinci adımda, kullanıcı tarafından seçilen işlem gerçekleştirilir ve sonucu hesaplanır.
def hesapla(islem_turu, sayi1, sayi2=None):
"""İşlemi gerçekleştirir ve sonucu hesaplar."""
import math
if islem_turu == 1:
return sayi1 + sayi2
elif islem_turu == 2:
return sayi1 - sayi2
elif islem_turu == 3:
return sayi1 * sayi2
elif islem_turu == 4:
if sayi2 != 0:
return sayi1 / sayi2
else:
return "Tanımsız (0'a bölme)"
elif islem_turu == 5:
return math.sqrt(sayi1)
elif islem_turu == 6:
return sayi1 ** sayi2
elif islem_turu == 7:
return math.sin(sayi1)
elif islem_turu == 8:
return math.cos(sayi1)
elif islem_turu == 9:
return math.tan(sayi1)
Bu fonksiyon, kullanıcı tarafından seçilen işlemi gerçekleştirir ve sonucu hesaplar.
Adım 3: Sonucu Ekrana Yazdırma Fonksiyonu
Üçüncü adımda, hesaplanan sonuç ekrana yazdırılacaktır.
def sonucu_yazdir(sonuc):
"""Hesaplanan sonucu ekrana yazdırır."""
print("Sonuç:", sonuc)
Bu fonksiyon, hesaplanan sonucu ekrana yazdırır.
Adım 4: Hesap Makinesi Uygulamasını Başlatma Fonksiyonu
Bu fonksiyon, Advanced Calculator uygulamasını başlatır ve uygulamanın akışını yönetir.
def hesap_makinesi_baslat():
"""Advanced Calculator uygulamasını başlatır."""
print("İşlem türünü seçin:")
print("1. Toplama")
print("2. Çıkarma")
print("3. Çarpma")
print("4. Bölme")
print("5. Karekök")
print("6. Üs Alma")
print("7. Sinüs")
print("8. Kosinüs")
print("9. Tanjant")
islem_turu = int(input("İşlem türünü girin (1-9): "))
sayi1, sayi2 = veri_al(islem_turu)
sonuc = hesapla(islem_turu, sayi1, sayi2)
sonucu_yazdir(sonuc)
# Uygulamayı başlatma
hesap_makinesi_baslat()
Bu fonksiyon, Advanced Calculator uygulamasını başlatır ve uygulamanın akışını yönetir. Kullanıcıdan işlem türünü ve gerekli verileri alır, işlemi gerçekleştirir ve sonucu ekrana yazdırır.
Kullanılan Konular
Veri Tipleri: Bu projede, sayılar (float, int) ve stringler (kullanıcı girişi) kullanılmıştır.
Koşullu İfadeler: if-else yapıları, kullanıcıdan alınan işlemi belirlemek ve doğru işlemi gerçekleştirmek için kullanılmıştır.
Fonksiyonlar: Fonksiyonlar, kodun modüler ve tekrar kullanılabilir olmasını sağlamıştır.
Matematiksel Hesaplamalar: math modülü kullanılarak karekök, üs alma ve trigonometri işlemleri gerçekleştirilmiştir.