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

Завдання: операторы выбора if и else в С

Після прочитання уроку прооператорах выбора if и else, переходим к практике. Как обычно, прошу вас постараться решать все задания самостоятельно, и только потом смотреть на предложенное нами решение.

1. Первая задача интересная и достаточно простая. Но код получится длинным. Эту задачу придумали наши преподаватели из компьютерной академии. Идея была такая – як би змусити початківців студентів помучитися з написанням коду, чтобы писанины было побольше )))  завдання: Пользователь вводит число от 1 до 9999 (сумму выдачи в банкомате). Необхідно вивести на екран словами введену суму і в кінці написати назву валюти з правильним закінченням. Наприклад: 7431 – семь тысяч четыреста тридцать один доллар, 2149 – дві тисячі сто сорок дев'ять доларов, 15 – пятнадцать долларов, 3 – три доллара. Для вирішення цього завдання вам необхідно буде застосовувати оператор % (остаток от деления). Почитать о нем можно в статье Арифметические операции в C  . Приступайте!

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

 3. Ще одне завдання для самостійно рішення. Необхідно написати програму, которая проверяет пользователя на знание таблицы умножения. Пользователь сам вводит два целых однозначных числа. Программа задаёт вопрос: результат множення першого числа на друге.  Користувач повинен ввести відповідь і побачити на екрані правильно він відповів чи ні. Якщо ні– показать еще и правильный результат.

Кто не справляется – задавайте вопросы в комментариях.

369 думки про "Завдання: операторы выбора if и else в С


  1. #include
    #include

    using namespace std;

    int main ()
    {
    setlocale (LC_ALL, "rus");

    int sum = 0, a = 0, b = 0, c = 0, d = 0;

    cout <> sum;

    //Проверка на ввод корректной суммы
    if ((sum > 9999) || (sum <= 0))
    cout << "\aВведено некорректное значение" <= 1000)//первый разряд - тысячи
    {
    a = sum / 1000;
    sum -= a * 1000;
    }
    if (sum >= 100)//Второй разряд - сотни
    {
    b = sum / 100;
    sum -= b * 100;
    }
    if (sum >=10 )//Третий и четвертый разряд - десятки и еденицы
    c = sum / 10;
    d = sum - c * 10;

    //Вывод на экран числа прописью
    if (a != 0)//Вывод тысяч
    {
    if (a == 9)
    cout << "девять тысячь ";
    if (a == 8)
    cout << "восемь тысячь ";
    if (a == 7)
    cout << "семь тысячь ";
    if (a == 6)
    cout << "шесть тысячь ";
    if (a == 5)
    cout << "пять тысячь ";
    if (a == 4)
    cout << "четыре тысячи ";
    if (a == 3)
    cout << "три тысячи ";
    if (a == 2)
    cout << "две тысячи ";
    if (a == 1)
    cout << "тысяча ";
    if (((b == 0) && (c == 0)) && (d == 0))
    cout << "долларов";
    }
    if ( b != 0)//Вывод сотен 200-900
    {
    if (b == 9)
    cout << "девятьсот ";
    if (b == 8)
    cout << "восемьсот ";
    if (b == 7)
    cout << "семьсот ";
    if (b == 6)
    cout << "шестьсот ";
    if (b == 5)
    cout << "пятьсот ";
    if (b == 4)
    cout << "четыреста ";
    if (b == 3)
    cout << "триста ";
    if (b == 2)
    cout << "двести ";
    if (b == 1)
    cout << "сто ";
    }
    if (c != 0)//вывод десятков 20-90
    {
    if (c == 9)
    cout << "девяносто ";
    if (c == 8)
    cout << "восемдесят ";
    if (c == 7)
    cout << "семдесят ";
    if (c == 6)
    cout << "шестдесят ";
    if (c == 5)
    cout << "пятдесят ";
    if (c == 4)
    cout << "сорок ";
    if (c == 3)
    cout << "тридцать ";
    if (c == 2)
    cout <= 10))//вывод если 10-19
    {
    if (sum == 19)
    cout << "девятадцать ";
    if (sum == 18)
    cout << "восемнадцать ";
    if (sum == 17)
    cout << "семнадцать ";
    if (sum == 16)
    cout << "шестнадцать ";
    if (sum == 15)
    cout << "пятнадцать ";
    if (sum == 14)
    cout << "четырнадцать ";
    if (sum == 13)
    cout << "тринадцать ";
    if (sum == 12)
    cout << "двенадцать ";
    if (sum == 11)
    cout << "одинадцать ";
    if (sum == 10)
    cout < 0) && (c != 1))//вывод единиц, если они есть, и если десятки не равны единице
    {
    if (d == 9)
    cout << "девять долларов";
    if (d == 8)
    cout << "восемь долларов";
    if (d == 7)
    cout << "семь долларов";
    if (d == 6)
    cout << "шесть долларов";
    if (d == 5)
    cout << "пять долларов";
    if (d == 4)
    cout << "четыре доллара";
    if (d == 3)
    cout << "три доллара";
    if (d == 2)
    cout << "два доллара";
    if (d == 1)
    cout << "один доллар";
    }
    if ((d == 0) || (c ==1))
    cout << "долларов";
    }
    //cout << endl << a <<" " << b << " " << c << " " << d << endl;
    //cout << sum << endl;

    getch ();
    return 0;
    }

      1. никак не могу поправить код, который выложил
        не отображает:
        cout введите сумму от 0-9999
        cin – sum
        вместо этого пишет : cout – summ

      2. Тэги этого сайта заключаются в угловые дужки. Поэтому всё от 1-й скобки перенаправления cout до 1-й скобки в cin он (форум) “съедает”.

  2. Решение третьей задачи на C#.

    за допомогою System;

    namespace proizvNum
    {
    клас Програма
    {
    статична порожнеча Головна()
    {
    int a, b, c, d;
    Console.Write(“Введите число А: “);
    a = Convert.ToInt32(Console.ReadLine());
    Console.Write(“Введите число Б: “);
    b = Convert.ToInt32(Console.ReadLine());
    з = а * b;
    Console.Write(“Как думаете, произведение А * Б = “);
    d = Convert.ToInt32(Console.ReadLine());
    if (д == гр)
    {
    Console.WriteLine(“правильно!”);
    }
    else
    {
    Console.WriteLine(“Не вірно! Ваша відповідь: ” + d + “, а правильный ответ: ” + c);
    }
    Console.WriteLine(“Для выхода нажмите любую клавишу. . .”);
    Console.ReadKey();
    }
    }
    }

    1. А зачем кому нужен (тут) C #, если здесь все обсуждения касаются C++?

      P.S. C # – это инструментарий ограниченной применимости и только исключительно в пределах операционной системы Windows. Это гораздо более ограниченный инструментарий чем C++.

  3. Вітаю, столкнулся с такой проблемой.В консоли пишет:”””c:\users\kamo.by admin\documents\visual studio 2013\Projects\Введите\Debug\Введите.exe”” не является внутренней или внешней
    командой, виконуваною програмою або пакетним файлом.
    Для продовження натисніть будь-яку клавішу . . .”

    Вот код программы
    #include
    using namespace std;

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

    int Chislo(0);
    cout <> Chislo;

    if (Chislo 9999);
    cout << "Число не входит в диапазон от 1 до 9999\n";
    else if
    cout << "Вы ввели:";
    if ((Chislo / 1000) % 10 == 1) cout << "Одна тысяча";
    else if ((Chislo / 1000) % 10 == 2) cout << "Две тысячи";
    else if ((Chislo / 1000) % 10 == 3) cout << "Три тысячи";
    else if ((Chislo / 1000) % 10 == 4) cout << "Четыре тысячи";
    else if ((Chislo / 1000) % 10 == 5) cout << "Пять тысяч";
    else if ((Chislo / 1000) % 10 == 6) cout << "Шесть тысяч";
    else if ((Chislo / 1000) % 10 == 7) cout << "Семь тысяч";
    else if ((Chislo / 1000) % 10 == 8) cout << "Восемь тысяч";
    else if ((Chislo / 1000) % 10 == 9) cout << "Девять тысяч";

    if ((Chislo / 100) % 10 == 1) cout << "Сто";
    else if ((Chislo / 100) % 10 == 2) cout << "Двести";
    else if ((Chislo / 100) % 10 == 3) cout << "Триста";
    else if ((Chislo / 100) % 10 == 4) cout << "Четыреста";
    else if ((Chislo / 100) % 10 == 5) cout << "Пятьсот";
    else if ((Chislo / 100) % 10 == 6) cout << "Шестьсот";
    else if ((Chislo / 100) % 10 == 7) cout << "Семьсот";
    else if ((Chislo / 100) % 10 == 8) cout << "Восемьсот";
    else if ((Chislo / 100) % 10 == 9) cout << "Девятьсот";

    if ((Chislo / 10) % 10 == 1)
    {
    if (Chislo % 10 == 0) cout << "Десять долларов";
    else if (Chislo % 10 == 1) cout << "Одинадцать долларов";
    else if (Chislo % 10 == 2) cout << "Двенадцать долларов";
    else if (Chislo % 10 == 3) cout << "Тренадцать долларов";
    else if (Chislo % 10 == 4) cout << "Четырандцать долларов";
    else if (Chislo % 10 == 5) cout << "Петандцать долларов";
    else if (Chislo % 10 == 6) cout << "Шестнадцать долларов";
    else if (Chislo % 10 == 7) cout << "Семнадцать долларов";
    else if (Chislo % 10 == 8) cout << "Восемнадцать долларов";
    else if (Chislo % 10 == 9) cout << "Девятнадцать долларов";
    }

    if ((Chislo / 10) % 10 == 2) cout << "Двадцать";
    else if ((Chislo / 10) % 10 == 3) cout << "Тридцать";
    else if ((Chislo / 10) % 10 == 4) cout << "Сорок";
    else if ((Chislo / 10) % 10 == 5) cout << "Пятьдесят";
    else if ((Chislo / 10) % 10 == 6) cout << "Шестьсот";
    else if ((Chislo / 10) % 10 == 7) cout << "Семьсот";
    else if ((Chislo / 10) % 10 == 8) cout << "Восемьсот";
    else if ((Chislo / 10) % 10 == 9) cout << "Девятьсот";

    if (Chislo % 10 == 0)Cout << "Доларов";
    else if (Chislo % 10 == 1)Cout << "Один доллар";
    else if (Chislo % 10 == 1)Cout << "Два доллара";
    else if (Chislo % 10 == 1)Cout << "Три доллара";
    else if (Chislo % 10 == 1)Cout << "Четыре доллара";
    else if (Chislo % 10 == 1)Cout << "Пять долларов";
    else if (Chislo % 10 == 1)Cout << "Шесть долларов";
    else if (Chislo % 10 == 1)Cout << "Семь долларов";
    else if (Chislo % 10 == 1)Cout << "Восемь долларов";
    else if (Chislo % 10 == 1)Cout << "Девять долларов";

    return(0);
    }
    и компилируется она успешно

    1. Прошу прощение за то, что зря побеспокоил, допустил кучу ошибок, думал , что эта надпись в консоли не из-за не правильного написания кода, и пока три раза не попробовал пересоздать проект этот код компилировался, и только на третий раз он мне показал мои ошибки.
      Спасибо за уроки.=)

  4. Вітаю.
    Не понимаю как написать код к 3-й задаче.
    Вот часть кода:
    int main()
    {
    setlocale(LC_ALL, “.1251”);

    bool proizvedenie = 0;
    int otvet = 0;

    cout <> proizvedenie;

    —> cout <> otvet; <— Вот эту часть кода он читает, но не даёт ввести ответ.

    Подскажите пожалуйста почему? Или что я делаю не так?

  5. void main(){
    int FirstNumber, друге число, відповідь, Value;
    FirstNumber = SecondNumber = Answer = Value = 0;
    cout <> FirstNumber;
    cout <> друге число;
    cout <> відповідь;
    Value = FirstNumber * друге число;
    if (Value != Answer) cout << "False " << "True: " << Value;
    else cout << "True";
    _getch();
    }

  6. решение к задачи №3

    #include “stdafx.h”
    #include
    using namespace std;

    INT _tmain(INT ARGC, _TCHAR * ARGV[])
    {
    setlocale (0,””);

    int a, b, sum;
    INT у;
    do{
    cout <<endl;
    cout <> a;
    cout <<endl;
    cout <> b;
    cout <<endl;

    cout <> sum;
    cout <<endl;

    if ( сума == (a * b))
    {
    cout << " Поздравляем это правильный ответ ! " ;
    }
    else
    {
    cout << " Это не правильно!\n";
    cout <<endl;
    cout << " Правильный ответ равен: "<< а * б ;
    cout <<endl;

    }
    cout <<endl<<endl;
    cout << " Для продолжения нажмите 1:\n" <<endl<> і) && (і != 0) );

    cout <<endl<<endl;
    return 0;
    }

    1. Уважаемый David! … И все другие посетители сайта! … Здесь и во всех других темах!

      Не пишите своих решений задач в ответах!
      На этом сайте очень трудно форматировать код C++, а в комментариях его форматировать практически невозможно.

      Ваш не форматированный C++ код примеров всё-равно никто не станет читать!

      1. Спасибо все ясно, больше не буду, у вас очень хороший сайт, много полезного!

  7. 2я задача

    #include
    #include
    using namespace std;

    int main()
    {
    setlocale(LC_CTYPE, "rus");
    int a = 0;

    cout <> a;
    if (a == 1) cout << "Мизинец\n";
    else if (a == 2) cout << "Безымянный\n";
    else if (a == 3) cout << "Указательный\n";
    else if (a == 4) cout << "Указательный\n";
    else if (a == 5) cout << "Большой\n";
    else cout << "Введите номер\n";

    system("pause");
    return main();
    }

  8. 3я задача

    #include "stdafx.h"
    #include
    #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, "rus");
    cout << "Программа проверки знания таблицы умножения!\n\n";

    int a,b,c;
    cout <> a;
    cout <> b;

    cout << "Какой будет результат умножения " << " " << a << "x" << b << "?\n\n";
    cout <> c;

    if (a*b == c) cout << "Ответ правельный! \n\n";
    else {
    cout << "Ответ не правельный:(\n\n";
    cout << "Правельный ответ будет - " << a*b << "\n\n";

    }

    system("pause");
    return main();
    }

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

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