Задачи с кодом

Как скоро вы накопите свой первый миллион?

Допустим, вы нашли свою работу мечты. В этой компании любопытная система оплаты: в геометрической прогрессии. За первый месяц вы получаете сумму 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))
Марина

Recent Posts

Символы новой строки в Python

В этом руководстве мы разберем все, что нужно знать о символах перехода на новую строку…

1 месяц ago

if __name__ == «__main__» в Python: полное объяснение

Блок if __name__ == "__main__" в Python позволяет определить код, который будет выполняться только при…

1 месяц ago

Как писать модульные тесты для методов экземпляра в Python

Давайте разберем, как настроить модульные тесты для экземпляров классов. Мы напишем тесты для проверки функциональности…

3 месяца ago

Как исправить ошибку «’builtin_function_or_method’ object is not subscriptable» в Python

Функции Python - это вызываемые объекты. Это означает, что для выполнения кода, определенного в функции,…

3 месяца ago

Как получить текущую директорию в Python

Многие программы на Python нуждаются в навигации по файловой системе для чтения и записи файлов.…

3 месяца ago

Как писать модульные тесты на Python

Юнит-тестирование с помощью unittest заключается в создании тест-кейсов для проверки функциональности отдельных частей вашего кода.…

4 месяца ago