Geomania.Org Forumları
Python Kodlama ve Matematik => Python Kodlama ve Matematik => Konuyu başlatan: Lokman Gökçe - Eylül 06, 2022, 12:19:38 ös
-
Soru 8: Bileşik faiz formülü şu şekilde verilir: $\color{blue}{\text{Bileşik faiz} + P = P\cdot \left(1 + \dfrac{R}{100} \right)^T}$.
Burada $P$ anapara, $T$ zaman ve $R$ yıllık faiz oranıdır. $P, T, R$ değerleri girildiğinde bileşik faizi en yakın tam sayıya yuvarlayarak hesaplayan python kodunu yazalım.
Açıklama: Bir gerçel sayıyı, en yakın tam sayıya yuvarlamak için Python'ın math kütüphanesinden ceil() fonksiyonunu yardıma çağırabilirsiniz.
-
Çözüm: Python'ın math kütüphanesini çağırmak için import math kodunu kullandığımızı belirtelim. En yakın tam sayıya yuvarlama fonksiyonu ceil()'i de math kütüphanesinden çağırdığımız için fonksiyonu math.ceil() biçiminde yazarız.
import math
def bilesik(p, t, r):
print(p, "lira anapara için,")
print(t, "yıl vade,")
print("%", r, "faiz oranı olmak üzere")
bil_f = math.ceil(p*pow(1+r/100, t) - p)
return print("bileşik faiz getirisi", bil_f, "lira olur.")
bilesik(1000, 3, 20)
Bu durumda çıktımız şu şekilde görünecektir:
1000 lira anapara için,
3 yıl vade,
% 20 faiz oranı olmak üzere
bileşik faiz getirisi 728 lira olur.
Şunu da hatırlatalım: Eğer math.ceil() yazılışı uzun geliyorsa fonksiyonun ismini değiştirebilme hakkımız da vardır. Örneğin ceil fonksiyonuna kısaca c demek istiyorsak aynı konu şöyle yazabiliyoruz:
from math import ceil as c
def bilesik(p, t, r):
print(p, "lira anapara için,")
print(t, "yıl vade,")
print("%", r, "faiz oranı olmak üzere")
bil_f = c(p*pow(1+r/100, t) - p)
return print("bileşik faiz getirisi", bil_f, "lira olur.")
bilesik(1000, 3, 20)