Основы программирования на С++ для начинающих

Задачи: арифметические операции в С++

Если вы уже прочитали статью Арифметические операции в С++ можно приступать к практике.

1. Распространённая задача:  Дано четырехзначное число (к примеру 5678), вывести на экран  в обратном порядке цифры из которых это число состоит. То есть мы должны увидеть на экране 8765. Подсказка: чтобы взять из числа отдельные цифры, надо применять  деление по модулю на 10.

2. На сайте практически любого коммерческого банка, можно встретить так называемый Депозитный калькулятор, который позволяет людям, не желающим углубляться в формулы расчета процентных ставок, узнать какую прибыль они получат. Для этого им достаточно заполнить определённые поля, нажать на кнопку и увидеть результат. Это простая программа, которую уже сможет написать каждый из вас. Итак, задача: Пользователь вводит сумму депозита и количество месяцев хранения денег в банке. Необходимо провести расчет и показать на экран прибыль с депозита в месяц,  за весь срок депозита, и общую сумму к выплате в конце срока.  Валюта пусть будет – доллар США. Процентная ставка – 5% годовых.  Формула  расчета  процентов  в  месяц    –                      СуммаДепозита * (ПроцентнаяСтавка / 100)  / ДнейВГоду * ДнейВМесяце.

Возможно у вас возникли вопросы по решению задач – задавайте их в комментариях!

151 thoughts on “Задачи: арифметические операции в С++

  1. #include
    #include
    using namespace std;

    float fun1(float sumOfdep, float prst, int daysY, int daysM) {
    float Plus = (sumOfdep * prst / daysY * daysM);
    return Plus;
    }

    float fun2(float plus1, float months) {
    float profit = (plus1 * months);
    return profit;
    }

    float fun3(float sumOfdep, float profit1) {
    float fullProfit = profit1 + sumOfdep;
    return fullProfit;
    }

    int main()
    {
    setlocale(LC_ALL, “RUS”);
    float prst = 0.05; int daysY = 365; int daysM = 30;
    float sumOfdep, months1;
    cout <> sumOfdep;
    cout <> months1;
    float prof1 = fun1(sumOfdep, prst, daysY, daysM);
    float prof2 = fun2(prof1, months1);
    float prof3 = fun3(sumOfdep, prof2);
    cout << "\nРасчет…\n";
    cout << "=======================================\n";
    cout << "Проценты в месяц: " << sumOfdep << " * " << prst << " / " << daysY << " * " << daysM << " = " << prof1 <<" $"<< endl;
    cout << "Проценты за весь срок: " << prof2 << " $" << endl;
    cout << "Общая сумма выплаты в конце срока: " << prof3 << " $" << endl;
    cout << "\nРасчет окончен\n";
    cout << endl;
    system("pause");
    return 0;
    }

  2. Во второй задаче арифметических действий, ошибка с порядком процентной ставки. Ибо если у нас есть 5%, то это численно равно 0.05, и подставляя это в формулу у нас получается на один порядок выше. Я могу ошибаться если не так то поправьте)

  3. Все оказалось проще простого:
    int main(int argc, char** argv) {
    int c,a,b,d,g,f;
    cin >> c;
    a=c % 10;
    b=c % 100; f=(b-a)/10;
    d=c%1000; g=(d-b)/100;
    c=(c-d)/1000;

    cout <<a<<f<<g<<c<<endl;
    system ("pause");
    return 0;
    }

  4. #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, “rus”);

    int a = 0;

    cout <> a;

    cout << "Вы написали: " << a << endl;

    cout << "Число наоборот: "<< a % 10;

    a/= 10;
    cout << a % 10;

    a /= 10;
    cout << a % 10;

    a /= 10;
    cout << a % 10;

    return 0;
    }

  5. Здравствуйте. В ответе ко второй задаче, при условии депозит 1000000, на 18 месяцев, программа выдаёт не корректные значения в Общая сумма выплаты в конце срока. И ещё одно значение так же выдаёт не корректно.

  6. #include

    using namespace std;

    int main() {
    setlocale(0, “RU”);
    char Numb[4];
    cout << "Введите четырёхзначное число: ";
    for (int i = 0; i > Numb[i];
    }
    for (int i = 3; i >= 0; i–) {
    cout << Numb[i];
    }
    return 0;
    }

  7. Написал вторую задачку на с#
    int mon;
    decimal dep,proc,pribm,pribv,obkvip;
    Console.WriteLine(“Введите сумму депозита в $”);
    dep=decimal.Parse(Console.ReadLine());
    Console.WriteLine(“Введите количество месяцев”);
    mon=int.Parse(Console.ReadLine());
    proc=(dep*5)/(365*31); // расчет процентов за один месяц
    pribm=((proc*dep)/100); // прибыль в месяц
    Console.WriteLine(“Ваша прибыль в месяц ={0} $”, pribm);
    pribv=((proc*dep)/100)*mon; // прибыль вся
    Console.WriteLine(“Ваша прибыль за весь период ={0} $”, pribv);
    obkvip=pribv+dep;
    Console.WriteLine(“Общая сумма к выплате ={0} $”,obkvip);

  8. Во второй задаче не совсем корректно отображается количество дней в месяце, на самом деле их будет 30.41666666 не учитывая высокосного года конечно, вот при этих цифрах будет правильный процент за год, и ещё при расчете на два и три года надо бы ещё и учитывать возросший депозит!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *