03-06-2020, Saat: 00:28
Merhaba, herkese iyi günler. Bir kaç yerde de rastlamıştım. Float sayıları round yapmak gerekiyordu.
Float sayılara çalışırken neden round ile yuvarlama yapmak gerekir? Bilgisayar binary (ikilik sistem) ile işlem yaptığı için mi böyle sonuç veriyor?
aşağıdaki kodda 100 ile çarptığım float sayıları para gösterimine çeviriyor. Bunun toFloat() basit hali var mıdır? Biraz spagetti oldu.
%.2f ile denedim ama bu seferde kuruşlarda hata çıkıyor. toFloat fonksiyonu şuan işimi görüyor ama basit ve okunaklı yazılabilir mi?
...
gibi
fiyatları 100 ile çarpmanın sebebi iki fiyat arasında range ile 1 lira(100) veya 1.05 (105) artırım yapmak istediğimden. sonra eski haline çeviriyorum.
Float sayılara çalışırken neden round ile yuvarlama yapmak gerekir? Bilgisayar binary (ikilik sistem) ile işlem yaptığı için mi böyle sonuç veriyor?
Kod:
>>> float(40.05)*100
4004.9999999999995
>>> int(round(float(40.05)*100,2))
4005
aşağıdaki kodda 100 ile çarptığım float sayıları para gösterimine çeviriyor. Bunun toFloat() basit hali var mıdır? Biraz spagetti oldu.
%.2f ile denedim ama bu seferde kuruşlarda hata çıkıyor. toFloat fonksiyonu şuan işimi görüyor ama basit ve okunaklı yazılabilir mi?
Kod:
1 -> 0.01
100 -> 1.00
111 -> 1.11
101 -> 1.01
10000 -> 100.00
10001 -> 100.01
...
gibi
fiyatları 100 ile çarpmanın sebebi iki fiyat arasında range ile 1 lira(100) veya 1.05 (105) artırım yapmak istediğimden. sonra eski haline çeviriyorum.
PHP Kod:
def toFloat(price):
price=str(int(price/100))+"."+str(price%100) if int(price%100)>=10 else str(int(price/100))+'.0'+str(price%100)
print(price)
return('%.2f' % float(price))
python ve javascript dünyada en çok yazılan iki dil.
c kadar hızlı python kadar syntaxı kolay olan julia da geleceğin dilleri arasında..