Python. В банк положено S руб под N процентов годовых. Разработайте код, с которого можно определить количество лет, за которые сумма вклада будет не менее N руб.
Пусть на входе мы имеем S – вложенная в рублях сумма, P – процент вклада и N – ожидаемая сумма на выходе. Нас интересует Y – количество лет, за которое мы достигнем ожидаемой суммы.
Определим функцию cash(S, P), которая возвращает скопленные деньги после одной итерации. И функцию cash_times(S, P, N), которая выводит количество лет, необходимые для достижения суммы N при заданных параметрах S и P.
def cash(S, P): return S + P * Sdef cash_times(P, S, N): n = 0 while S < N: S = cash(S, P) n += 1 return n
Добавим код для ввода и проверки пользовательских данных и вывода результата.
S = int(input("Enter a sum of deposit S = "))P = int(input("Enter percents of deposit P = "))N = int(input("Enter an expected sum N = "))if S <= 0: print("Wrong sum of deposit. It must be positive number.") exit(1)if P > 100 or P <= 0: print("Wrong percents of deposit. It must be in (0;100].") exit(1)if N < S: print("Wrong expected sum. It must be bigger then S.") exit(1)print("You should wait for", cash_times(P, S, N), "years")
Пример работы программы приведен на скриншоте в закрепе.
s, n, N = int(input('Введите S: ')), int(input('Введите n: ')), int(input('Введите N: '))
k= 0
while s < N:
k+=1
s = s*(1+n/100)
print(k)
В задании, скорее всего, опечатка.
Пусть на входе мы имеем S – вложенная в рублях сумма, P – процент вклада и N – ожидаемая сумма на выходе. Нас интересует Y – количество лет, за которое мы достигнем ожидаемой суммы.
Определим функцию cash(S, P), которая возвращает скопленные деньги после одной итерации. И функцию cash_times(S, P, N), которая выводит количество лет, необходимые для достижения суммы N при заданных параметрах S и P.
def cash(S, P): return S + P * Sdef cash_times(P, S, N): n = 0 while S < N: S = cash(S, P) n += 1 return nДобавим код для ввода и проверки пользовательских данных и вывода результата.
S = int(input("Enter a sum of deposit S = "))P = int(input("Enter percents of deposit P = "))N = int(input("Enter an expected sum N = "))if S <= 0: print("Wrong sum of deposit. It must be positive number.") exit(1)if P > 100 or P <= 0: print("Wrong percents of deposit. It must be in (0;100].") exit(1)if N < S: print("Wrong expected sum. It must be bigger then S.") exit(1)print("You should wait for", cash_times(P, S, N), "years")Пример работы программы приведен на скриншоте в закрепе.