Основи програмування на С ++ для початківців

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

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

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

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

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

151 думки про "Завдання: арифметические операции в С

  1. формула, яка формує нове число X:
    X = * 10 + (a % 10), де – вихідне число.


    #include
    using namespace std;

    int main() {
    int x = 5678;
    int reverse_x = 0;

    while (x) {
    reverse_x = reverse_x * 10 + x % 10;
    x /= 10;
    }

    cout << reverse_x << endl;

    return 0;
    }

  2. А у мене нічого не виходить я нічого не поннял просто
    я не знаю скільки треба довбати теорію

    1. //—————————————————————————
      #include
      #прагма hdrstop
      #include
      #include
      #include
      //—————————————————————————
      using namespace std;
      #прагма argsused
      INT _tmain(INT ARGC, _TCHAR * ARGV[])
      {
      double sum, res, srok;
      cout<<"5% prozentna stavka v RIK!!!"<<endl;
      cout<>sum;
      cout<>srok;
      Рез = сума * 0,05 *(srok / 12);
      cout<<"Zarobitok za vesy termin = "<<res<<"$"<<endl;
      cout<<"Zarobitok za misyaz = "<<res / srok<<"$"<<endl;
      cout<<"Zarobitok za misyaz = "<<Рез + сума<<"$"<<endl;
      system("pause");
      return 0;
      }
      //—————————————————————————

  3. Не потрібно довбати теорію…
    А потрібно завдання вирішувати, вирішувати і вирішувати.
    А якщо “нічого” не виходить, то потрібно конкретно задавати питання – що там не виходить.

    P.S. Обговорювати тут деталі незручно (через движка), але можна на форумі:
    http://rus-linux.net/forum/viewforum.php?f=31

  4. #include
    using namespace std;

    int main()
    {
    char number[] = "5678";
    setlocale(LC_ALL, "rus");
    cout << "Данное число: " << number << endl;
    cout << "Это же число в обратном порядке: " << number[3] << number[2] << number[1] << number[0] << endl;
    system("pause");
    return 0;
    }

    Мені таке рішення більше подобається)

      1. Сенс в тому, що у вас НЕ число, а символьне зображення числа, рядок символів. І в цьому випадку рішення правильне.

        Але якщо число буде вводитися, та ще й як рядок, а, например, обчислюватися, то ось тут вже такий підхід не працює.

    1. Це рішення реально крутіше і компактніше.
      тільки добре, якби користувачеві прям при виконанні надавали можливість ввести число, типу:
      ……
      голець номер[ ] = “0”;
      cin>>number;
      ……
      cout << "Это же число в обратном порядке: " << number[3] << number[2] << number[1] << number[0] << endl;
      ……

      1. [код]
        int main()
        {
        setlocale(LC_ALL, “rus”);
        int a = 0;
        cout <> a;
        INT B = 10;
        ІНТ з = а % b;
        INT D = A / b;
        INT д е = % b;
        INT F = d / b;
        INT G = F % b;
        ІНТ ч = е / b;
        cout << "в обратном порядке цифры из которых сосотит это число – " <<c<<е<<г<<годину<< endl;
        cout << "\n";
        return 0;

        }
        [/код]

  5. #include

    using namespace std;
    int main()
    {
    setlocale(LC_ALL,”rus”);
    int first = 5678;
    INT другий = 3087;
    cout << " результат " << first + second << endl;

    system("pause");

    return 0;
    }
    як міг

  6. Моє рішення першого завдання.
    Працює з різною кількістю знаків в числі.


    unsigned int iNumber(0);
    unsigned int iCurrent_digit;
    unsigned int iNumber_temp;
    int iBit (0);

    cout <> iNumber)
    {
    if (iNumber >= 1 && iNumber <= 4294967295) break;
    else cerr << "\nЧисло не из указанного диапазона. Введите ещё раз\n";
    }
    cout < 0; iBit++)
    {
    iNumber_temp = iNumber_temp / 10;
    }

    // Выводим числа в обратном порядке

    for ( ; iBit > 0 ; iBit--)
    {
    iCurrent_digit = iNumber % 10;
    if (iCurrent_digit == 0) break;
    cout << iCurrent_digit;
    iNumber /= 10;

    }

      1. Ця проблема вже вирішена. Додавайте код в коментарі між code і / code в квадратних дужках

  7. Вирішення першого завдання,як варіант.
    [код]
    #include
    #include
    #include
    using namespace std;

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

    int a = 5678;
    int b;
    cout << "Данное число: " << a << endl;
    cout << "Число наоборот: " ;
    for (int i(0); i < 4 ; i )
    {
    б = (%(int)(бух(10,+ 1)))/(int)бух(10,i);
    cout << b;
    }
    _getch();
    return 0;
    }
    [/код]

  8. Як ділити по модулю я чесно кажучи не здогадався .
    Але з розрахунком депозиту ніби як зробив ще простіше =)

      1. Задано ціле число A. Перевірити істинність висловлення: «Число

        A є непарним та негативним» Как сжелать этот код в с ++?

залишити коментар

Ваша електронна адреса не буде опублікований. Обов'язкові поля позначені * *