Proszę o pomoc , wyjaśnienie, gdzie popełniłem błąd

Proszę o pomoc , wyjaśnienie, gdzie popełniłem błąd
PG
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

Witam
Mam takie zadanie, a mianowicie mam utworzyć program , który będzie obliczał kwotę uzbieraną na rachunku bankowym(taki prosty kalkulator)
wzór , który ma mi wyliczać działanie jest następujący A = P(1+r/n) z dopiskiem u gór nt przy wzorze .

Kod mojego programu wygląda następująco:

Kopiuj
P = int(input("Wprowadz kwotę początkową"))
r = int(input("roczna stopę oprocentowania"))
n = int(input("ile razy następuje obliczanie odsetek w ciągu roku"))
t = int(input("czas trwania lokaty"))
A = P*(1+r/n)/100*n*t
print(A)

i mam taki problem , że wydaje mi się , że program licz błędnie
przykładowo , jeżeli kwotę początkową podam 100, stopę oprocentowania 1 , ilość naliczania odsetek :12(co miesiąc) , a czas trwania lokaty 1 rok to programik daje mi następujący wynik : 1.0833333333333333. Czy mógłby ktoś wytłumaczyć co sprawia, że ten dziecinnie prosty programik wykonuje nieoprawne moim zdaniem obliczenia

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5025
PG
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 26
0

@lion137: Dzięki serdeczne skorzystałem z tego wzoru jednak wychodzi mi taki sam wynik 1.0833333333333333 . Czy mógłbym cię prosić abyś napisał jaki tobie wyjdzie wynik z tego działania w takim programie?

lion137
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5025
1

Troszkę więcej niż 101, jak być powinno.

Kopiuj
def capital_after_nyears(start_amount, cap_per_year, percentage, years):
  return start_amount * (1 + (percentage / (100 * cap_per_year))) ** (years * cap_per_year)

print(capital_after_nyears(100, 12, 1, 1))  # -> 101.00501628743486
Althorion
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1620
0
Kopiuj
>>> 100 * (1 + 1/(100 * 12)) ** (1 * 12)
101.0045960887181

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.