Próbuję teraz wykonać kalkulator emerytalny na Pythonie. Nie ma nic złego w składni ale kiedy uruchomić następujący program:"Typy nieobsługiwane: int() <str()"
def main():
print("Let me Retire Financial Calculator")
deposit = input("Please input annual deposit in dollars: $")
rate = input ("Please input annual rate in percentage: %")
time = input("How many years until retirement?")
x = 0
value = 0
while (x < time):
x = x + 1
value = (value * rate) + deposit
print("The value of your account after" +str(time) + "years will be $" + str(value))
on mi mówi, że:
Traceback (most recent call last):
File "/Users/myname/Documents/Let Me Retire.py", line 8, in <module>
while (x < time):
TypeError: unorderable types: int() < str()
Jakieś pomysły jak mogę rozwiązać ten problem?
OK, wszystko wymyśliłem. Dziękuję bardzo za twój czas i wysiłek. Naprawdę to doceniam. Dziękuję bardzo życzliwy panie. Jest jeszcze jeden problem do rozwiązania, który polega na tym, że roczna stopa maleje wraz z upływem czasu. Na przykład, jeśli wprowadzę 500 dolarów w ciągu 10 lat przy stawce 50%, da mi to 550 dolarów po roku, 555,0, 555.55, 555.5555 itd. Tak jak w rzeczywistości, nie robi to 50 procent rocznie. – user2074050
@ user2074050 To tylko błąd matematyczny. Dodajesz do depozytu, a nie aktualną wartość. Chcesz 'value * = (1 + rate)' (pomnóż ubiegłoroczną wartość przez kurs plus jeden). –