Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача 5. Стипендия Python

Zero Ученик (124), открыт 3 дня назад
Ежемесячная стипендия студента составляет educational_grant рублей, а расходы на проживание превышают стипендию и составляют expenses рублей в месяц.

Рост цен ежемесячно увеличивает расходы на 3%, кроме первого месяца. Обратите внимание, что каждый месяц цены увеличиваются на 3% относительно прошлого месяца.

Что нужно сделать
Составьте программу расчёта суммы денег, которую необходимо получить у родителей один раз в начале обучения, чтобы можно было прожить учебный год (десять месяцев), используя только эти деньги и стипендию.

Обратите внимание: во всех расчётах программы используются только целые числа, а дробные значения преобразуются в целые.

Пример

Введите ежемесячную стипендию: 10000
Введите ежемесячные расходы: 12000

1-й месяц: траты 12000 рублей, не хватает 2000 рублей.
2-й месяц: траты 12360 рублей, не хватает 2360 рублей.
3-й месяц: траты 12730 рублей, не хватает 2730 рублей.
4-й месяц: траты 13111 рублей, не хватает 3111 рублей.
5-й месяц: траты 13504 рублей, не хватает 3504 рублей.
6-й месяц: траты 13909 рублей, не хватает 3909 рублей.
7-й месяц: траты 14326 рублей, не хватает 4326 рублей.
8-й месяц: траты 14755 рублей, не хватает 4755 рублей.
9-й месяц: траты 15197 рублей, не хватает 5197 рублей.
10-й месяц: траты 15652 рублей, не хватает 5652 рублей.

Сумма денег, которую необходимо получить у родителей: 37544 рублей.
Помогите написать код
2 ответа
a a Ученик (138) 3 дня назад
for month in range(1, 11): # Учебный год - 10 месяцев
# Расчет недостающей суммы
deficit = current_expenses - educational_grant
if deficit > 0:
total_needed += deficit

# Увеличение расходов на 3% для следующего месяца
current_expenses = int(current_expenses * 1.03) # Округляем до целого числа

# Вывод информации о текущем месяце
print(f"{month}-й месяц: траты {current_expenses} рублей, не хватает {deficit} рублей.")

return total_needed

# Ввод данных
educational_grant = int(input("Введите ежемесячную стипендию: "))
expenses = int(input("Введите ежемесячные расходы: "))

# Расчет необходимой суммы
required_money = calculate_required_money(educational_grant, expenses)

# Вывод итоговой суммы
print(f"\nСумма денег, которую необходимо получить у родителей: {required_money} рублей.")



Как работает программа:
Программа запрашивает у пользователя ввод ежемесячной стипендии и расходов.
Затем она рассчитывает недостающую сумму для каждого из 10 месяцев, учитывая, что расходы увеличиваются на 3% каждый месяц.
В конце программа выводит общую сумму, которую необходимо получить у родителей.
ZeroУченик (124) 3 дня назад
Много раз пытался ввести ваш код, всё не как не пойму, не работает, напиши чистый код пожалуйста))
Cogni Просветленный (40059) 3 дня назад
введи стипендию и расходы, затем последовательно умножай расходы на 1.03 (округляя до int), ежемесячно вычисляй нехватку и суммируй её:
 educational_grant = int(input()) 
expenses = int(input())
total_needed = 0
current_expenses = expenses
for _ in range(10):
shortage = current_expenses - educational_grant
if shortage > 0:
total_needed += shortage
current_expenses = int(current_expenses * 1.03)
print(total_needed)
ZeroУченик (124) 3 дня назад
Мне нужно как в примере, чтобы выводились 1-й месяц: траты 12000 рублей, не хватает 2000 рублей, и тогдалие, не могли бы вы помочь сделать так пожалуйста
Cogni Просветленный (40059) Zero,
 educational_grant = int(input()) 
expenses = int(input()) 
total_needed = 0 
current_expenses = expenses 
for month in range(1, 11): 
    shortage = max(current_expenses - educational_grant, 0) 
    print(f"{month}-й месяц: траты {current_expenses} рублей, не хватает {shortage} рублей.") 
    total_needed += shortage 
    current_expenses = int(current_expenses * 1.03) 
print(f"Сумма денег, которую необходимо получить у родителей: {total_needed} рублей.") 
 
Похожие вопросы