Sorumuz şu: Bir adam elindeki çeki bozdurmak için bankaya gitti. Fakat veznedar bir yanlışlık yaptı ve çekin üzerinde yazılı liralar yerine kuruş ve kuruşlar yerine de lira vererek çeki ödedi. Adam da dikkat etmeden paraları cebine koydu. Eve giderken paranın 5 kuruşunu düşürdü. Bu vesile ile parasını saydı ve cebinde çekin değerinin tam iki katı parası olduğunun farkına vardı. Çekin üzerinde yazılı olan miktar ne kadardı? *
Programımız oldukça basit, lira ve kuruşu 100 lük döngülere sokuyoruz ve formülü deniyoruz.
for lira in range(100):
for kurus in range(100):
if lira + kurus / 100 == 0: continue
if (kurus + (lira - 5) / 100) / (lira + kurus / 100) == 2:
print(f"Çekin üzerinde yazan miktar: {lira}.{kurus}")
break
continue kullanmamızın sebebi sıfıra bölünme hatasından kaçmak içindir.
Bir diğer çözüm de şu olabilir
for lira in range(0,55):
for kurus in range(lira+5,105):
if 2*(float(lira)+float(kurus)/100)==float(kurus)+float(lira-5)/100:
print(str(lira)+"."+str(kurus)+"₺")
E-posta hesabınız yayımlanmayacak. Abonelik için e-posta yazmalısınız. Yorumda html etiketleri kullanabilirsiniz.