Вопрос задан 27.09.2023 в 08:49. Предмет Информатика. Спрашивает Прожога Никита.

Помогите написать программу на c++ . Начальный вклад клиента составил А руб. В первый месяц

ставка по вкладу составила р %, в каждый следующий месяц она будет увеличиваться на q %. Определить, через сколько месяцев накопленная сумма станет больше 2А. Рассматривать срок не более М месяцев.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Коваленко Саша.

Объяснение встроено в код в виде комментариев.

#include <iostream>

using namespace std;

int main()

{

   double a = 10; //начальный вклад

   double p = 2; //% до 1 месяца

   double a_next = a * (1 + (p/100)); // сумма после выплаты за 1 месяц

   double q = 4; //% после 1 месяца

   double m = 10; //месяцы

   double need = a * 2; // необходимая сумма

   if (a_next >= need) { //если процент за 1 месяц очень велик и сразу даёт искомое значение - выводим

       cout << "Pay off in one mouth" << endl;

       exit(0);

   }

   double will_be_earned = ((2 * a_next * ((m - 2) * (1 + (q / 100)))) / 2) * (m-1); // максимальная сумма которую можно заработать за m месяцев

   if (will_be_earned < need) { // если такую сумму вообще не заработать за такое кол-во месяцев - выходим

       cout << "Wont pay off in " << m << " mouth" << endl;

       exit(0);

   }

   for (long multiplier = 1; multiplier < m-1; multiplier++) { // перебираем месяцы пока не найдём нужный

       double tmp_calc = (a_next * ((multiplier - 1) * (1 + (q / 100))));

       if (tmp_calc >= need) {

           cout << "Pay off in " << multiplier+1 << " mouth"<<endl;

           break;

       }

   }

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи вам потребуется написать программу на C++. Вот пример такой программы:

cpp
#include <iostream> int main() { double A; // Начальный вклад клиента double p; // Процентная ставка в первый месяц double q; // Увеличение процентной ставки каждый месяц double M; // Максимальное количество месяцев double accumulated = A; // Накопленная сумма std::cout << "Введите начальный вклад (A): "; std::cin >> A; std::cout << "Введите процентную ставку в первый месяц (p в десятичных долях): "; std::cin >> p; std::cout << "Введите увеличение процентной ставки каждый месяц (q в десятичных долях): "; std::cin >> q; std::cout << "Введите максимальное количество месяцев (M): "; std::cin >> M; int months = 0; while (accumulated <= 2 * A && months < M) { accumulated += accumulated * p; p += p * q; months++; } if (accumulated > 2 * A) { std::cout << "Через " << months << " месяцев накопленная сумма станет больше 2A." << std::endl; } else { std::cout << "Накопленная сумма не станет больше 2A в течение " << M << " месяцев." << std::endl; } return 0; }

Программа запрашивает начальный вклад (A), процентную ставку в первый месяц (p в десятичных долях), увеличение процентной ставки каждый месяц (q в десятичных долях) и максимальное количество месяцев (M). Затем она использует цикл while для расчета накопленной суммы вклада и увеличения процентной ставки в каждом месяце, пока накопленная сумма не станет больше 2A или не будет превышено максимальное количество месяцев.

После завершения цикла программа выводит результат: через сколько месяцев накопленная сумма станет больше 2A или сообщает, что это не произойдет в течение указанного максимального количества месяцев.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос