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

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

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

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

2.  Пользователь вводит порядковый номер пальца руки. Необходимо показать его название на экран.

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

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

Задачи: операторы выбора if и else в С++
4.5 (89.17%) 24 vote[s]

226 thoughts on “Задачи: операторы выбора if и else в С++

  1. ВРОДЕ ТАК…
    #include “pch.h”
    #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL,”RUS”);
    int a, b, c, d;
    cout << "Введите 2 числа" <> a >> b;
    cout << "Введите результат сложения двух чисел" <> d;
    c = a * b;

    if (d == c)
    {
    cout << "Отв Верн" << endl;
    }

    else if(d!=c)
    {
    cout << "Вы ввели не правильный ответ" << endl;
    cout << "Правильный ответ=" << c << endl;
    }
    }

  2. #include
    using namespace std;

    int main() {
    setlocale(LC_ALL, “russian”);
    int first = 0;
    int second = 0;
    int third= 0;
    int d = 0;
    cout <> first;
    cout <> second;
    cout <> d;
    third = first * second;
    if (d == third) {
    cout << "Ответ верный" << endl;

    }
    else if (d != third) {
    cout << "Ответ не правильный" << endl;
    cout << "Правильный ответ=" << third << endl;
    }
    system("pause");
    return 0;

  3. #include

    using namespace std;

    void main() {

    setlocale(LC_ALL, “ru”);

    int a = 0, b = 0, otvet = 0;

    cout << "Введите два числа\n" <> a;
    cout <> b;
    cout <> otvet;

    if (a*b == otvet)
    {
    cout << "\nВы ответили правильно. Произведение " << a << " и " << b << " будет равно " << a * b;
    }
    else if (a*b != otvet) {
    cout << "\nК сожалению, вы ответили неправильно. Результат произведения " << a << " и " << b << " будет равен " << a * b;
    }
    cout << "\n\n\n\n\n\n";
    }

  4. Про озвучивание четырехзначного числа:
    int main()
    {
    setlocale(LC_ALL, “rus”);
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    start :
    int ch,tus,sot,des,ed;
    cout < 9999: “;
    cin >> ch;
    if (ch > 9999)
    {
    cout << "Сказал же, не больше! ";
    goto start;
    }
    if (ch ==0)
    {
    cout << "Бомжара))\n";
    goto start;
    }
    if (ch <0)
    {
    cout << "Долги? Сочувствую)\n";
    goto start;
    }

    else
    {
    tus = ch / 1000;
    switch (tus)
    {
    case 1:
    cout << "Одна тысяча ";
    break;
    case 2:
    cout << "Две тысячи ";
    break;
    case 3:
    cout << "Три тысячи ";
    break;
    case 4:
    cout << "Четыре тысячи ";
    break;
    case 5:
    cout << "Пять тысяч ";
    break;
    case 6:
    cout << "Шесть тысяч ";
    break;
    case 7:
    cout << "Семь тысяч ";
    break;
    case 8:
    cout << "Восемь тысяч ";
    break;
    case 9:
    cout << "Девять тысяч ";
    break;
    case 0:
    cout << "";
    break;
    }
    sot = ch % 1000;
    sot /= 100;
    switch (sot)
    {
    case 1:
    cout << "сто ";
    break;
    case 2:
    cout << "двести ";
    break;
    case 3:
    cout << "триста ";
    break;
    case 4:
    cout << "четыреста ";
    break;
    case 5:
    cout << "пятьсот ";
    break;
    case 6:
    cout << "шестьсот ";
    break;
    case 7:
    cout << "семьсот ";
    break;
    case 8:
    cout << "восемьсот ";
    break;
    case 9:
    cout << "девятьсот ";
    break;
    case 0:
    cout << "";
    break;
    }

    des = ch % 1000;
    des = des % 100;
    des = des / 10;

    switch (des)
    {
    case 1:
    {
    des = ch % 1000;
    des = des % 100;
    if (des == 10)
    cout << "десять";
    if (des == 11)
    cout << "одинадцать долларов";
    if (des == 12)
    cout << "двенадцать долларов";
    if (des == 13)
    cout << "тринадцать долларов";
    if (des == 14)
    cout << "четырнадцать долларов";
    if (des == 15)
    cout << "пятнадцать долларов";
    if (des == 16)
    cout << "шестнадцать долларов";
    if (des == 17)
    cout << "семнадцать долларов";
    if (des == 18)
    cout << "восемнадцать долларов";
    if (des == 19)
    cout << "девятнадцать долларов";

    goto end;
    break;
    }
    case 2:
    cout << "двадцать ";
    break;
    case 3:
    cout << "тридцать ";
    break;
    case 4:
    cout << "сорок ";
    break;
    case 5:
    cout << "пятьдесят ";
    break;
    case 6:
    cout << "шестьдесят ";
    break;
    case 7:
    cout << "семьдесят ";
    break;
    case 8:
    cout << "восемьдесят ";
    break;
    case 9:
    cout << "девяносто ";
    break;
    case 0:
    cout << "";
    break;
    }
    ed = ch % 1000 % 100 % 10;
    switch (ed)
    {
    case 1:
    cout << "один доллар";
    break;
    case 2:
    cout << "два доллара";
    break;
    case 3:
    cout << "три доллара";
    break;
    case 4:
    cout << "четыре доллара";
    break;
    case 5:
    cout << "пять долларов";
    break;
    case 6:
    cout << "шесть долларов";
    break;
    case 7:
    cout << "семь долларов";
    break;
    case 8:
    cout << "восемь долларов";
    break;
    case 9:
    cout << "девять долларов";
    break;
    case 0:
    cout << "";
    break;
    }
    end:
    if (ch % 10 == 0) cout << " долларов";

    cout << ".\n";
    goto start;
    }
    }

      1. Что именно в остаче от деления тебя интересует ? Как оно применимо в этой задаче , или что?

    1. А если ты в этой программе к примеру 12 введешь, у тебя не выдаст ответ “двенадцать долларов два доллара”?

      1. Нет, не выдаст. На числа от 11 до 19 прописан отдельный код

  5. #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL,”RUS”);
    int a,b,c,d;
    cin>>a>>b;

    cout<>c;

    d=a*b;

    if(c==d)
    {
    cout<<"Ответ: "<<c<<" верный";
    }

    else
    {
    cout<<"Ответ: "<<c<<" не верный ответ"<<", правильный ответ: "<<d;
    }
    }

  6. int num1, num2, otvet;

    cout << "Программа для проверки таблицы умножения:" << endl;

    cout << "Введите первое число:" <> num1;
    cout << "Введите первое число:" <> num2;

    cout << "Введите произведение этих чисел:" <> otvet;

    int variant1;
    variant1 = num1*num2;
    if (otvet == variant1){
    cout << "Вы ответили верно!!!!\n";
    }
    else if (otvet != variant1){
    cout << "Вы ответили не верно!!!!\n" <<
    "Правильный ответ : " << variant1 << endl;
    }

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

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