Допустим, вы нашли свою работу мечты. В этой компании любопытная система оплаты: в геометрической прогрессии. За первый месяц вы получаете сумму first_month, но уже в следующем месяце ваша зарплата вырастет в multiplier раз.
Напишите функцию, которая будет принимать first_month и multiplier и возвращать число месяцев, необходимых для того, чтобы скопить миллион.
Предположим, что вы ничего не тратите из зарплаты, пока не накопите больше миллиона.
million_in_month(10, 2) ➞ 17 million_in_month(100, 1.01) ➞ 464 million_in_month(50, 100) ➞ 4 1m = 50 2m= 5050 3m = 505050 4m = 50505050
Не забудьте вернуть результат в месяцах. Накопить нужно больше миллиона (savings > 1000000).
def million_in_month(first_month, multiplier):
count = 1
total = first_month
while total < 1000000:
count += 1
first_month *= multiplier
total += first_month
return count import math
def million_in_month(first_month, multiplier):
#goal = 10**6# or 1000000;
return math.ceil(math.log((1-1000000*(1-multiplier)/first_month),multiplier)) Если вы ищете работу на Python, на Talanto.work сейчас есть варианты для junior, middle, senior…
Рынок Python-вакансий большой, но удобным его назвать сложно. Формально вакансий много, однако в реальном поиске…
Срезы в Python — это больше, чем a[2:7]. В статье — быстрый разбор полезных приёмов:…
В этой статье мы рассмотрим возведение в степень в Python с помощью различных методов, от…
Дубликаты в списке Python — частая проблема. В статье показано, как быстро убрать повторы, в…
Услуга виртуального хостинга на SpaceWeb позволяет арендовать часть сервера (shared-сервера) и разместить на нём свой…