Операторы. Условный оператор if. Оператор switch. Операторы цикла

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Фрагмент текста работы

Программирование на С++ Тема 2. Операторы

  • Набор операторов языка С/С++ включает:
    • операторы описания переменных и других объектов;
    • операторы-выражения и операторы присваивания;
    • составной оператор (блок);
    • условный оператор и оператор варианта;
    • операторы цикла;
    • операторы перехода;
    • пустой оператор.

  • Всякий оператор завершается точкой с запятой.
  • Блок операторов заключает в себя ноль или несколько операторов с целью использовать их как один оператор в тех местах, где по правилам языка можно записать только один оператор. Блоки часто используют для ограничения области действия переменных и просто для улучшения читаемости программы.

Оператор if

Оператор if

  • #include <iostream>
  • using namespace std;
  • int main(void)
  • { int a, b, c;
  • cout << " a = "; cin >> a;
  • cout << " b = "; cin >> b;
  • if (a != b)
  • { c = a + b;
  • cout << " c = " << c << "\n";
  • }
  • else
  • cout << "a равно b \n";
  • }

Условный оператор if

  • Работает условный оператор следующим образом. Сначала вычисляется значение выражения-условия. Если оно не равно нулю, то есть имеет значение истина (true), выполняется оператор_1. В противном случае, когда значение выражения равно нулю, то есть имеет значение ложь (false), то оператор_2.
  • Если в задаче требуется, чтобы в зависимости от значения условия выполнялся не один оператор, а несколько, их необходимо заключать в фигурные скобки, как составной оператор. В этом случае компилятор воспримет группу операторов как один.

Оператор if

  • if (условие)оператор;
  • или
  • if (условие)
  • { оператор1;
  • оператор2;
  • }

  • #include <iostream>
  • using namespace std;
  • int main(void)
  • { int a, b, c;
  • cout << " a = "; cin >> a;
  • cout << " b = "; cin >> b;
  • c = 0;
  • if (a != b)
  • c = a + b;
  • cout << " c = " << c << "\n";
  • }

Условный оператор if

  • Альтернативная ветвь else в условном операторе может отсутствовать, если в ней нет необходимости. В таком усеченном виде условный оператор работает так: оператор (группа операторов) либо выполняется, либо пропускается, в зависимости от значения выражения-условия.
  • В примере применения условного оператора без альтернативной ветки else значение переменной с изменяется только при условии, что а не равно b. Вывод на экран значения переменной с выполняется в любом случае.

Пример использования оператора if

  • Задача 1:
  • Написать программу решения квадратного уравнения ax2 + bx + c =0.
  • Исходные данные: вещественные числа a, b, с – коэффициенты квадратного уравнения.
  • Результаты работы программы: вещественные числа x1 и x2 – корни квадратного уравнения, либо сообщение о том, что корней нет.
  • Вспомогательные переменные: вещественная переменная d, в которой будет храниться дискриминант квадратного уравнения.

Пример использования оператора if

  • Словесный алгоритм решения задачи:
  • Начало алгоритма.
  • Ввод числовых значений переменных a, b, c.
  • Вычисление значения дискриминанта d по формуле d = b2 - 4ac
  • Если d < 0, то переход к п. 5, иначе переход к п. 6
  • Вывод сообщения «Корней нет» и переход к п. 8
  • Вычисление корней
  • Вывод значений x1 и x2 на экран.
  • Конец алгоритма.

Пример использования оператора if

  • Блок-схема алгоритма решения задачи:

Пример использования оператора if

#include <iostream> #include <math.h> using namespace std; int main(void) { float a, b, c, x1, x2, d; // ввод значений коэффициентов квадратного уравнения cout << "a = "; cin >> a; cout << "b = "; cin >> b; cout << "c = "; cin >> c; // вычисление дискриминанта d = b*b-4*a*c; // если дискриминант отрицателен, if (d < 0) cout << " Корней нет"; else { // иначе вычисление корней x1, x2 x1=(-b + sqrt(d))/(2*a); x2=(-b - sqrt(d))/(2*a); cout << "x1 = " << x1 <<"\t x2 = " << x2 << "\n"; } }

Условный оператор if

  • Вложенные условные операторы if :
  • if(i)
  • { if(j) оператор_1;
  • if(k) оператор_2; // этот if
  • else оператор_3; // ассоциирован с этим else
  • }
  • else оператор_4; // ассоциирован с if(i)

Условный оператор if

  • Оператор if является вложенным, если он вложен, т.е. находится внутри другого оператора if или else. В практике программирования вложенные условные операторы используются довольно часто. Во вложенном условном операторе ветка else всегда ассоциирована с ближайшим if в том же блоке, если этот if не ассоциирован с другой веткой else.
  • Последняя ветка else не ассоциирована с if(j) потому, что она находится в другом блоке. Эта ветка else ассоциирована с if(i). Внутренняя ветка else ассоциирована с if(k), потому что этот if — ближайший.
  • В настоящее время большинство компиляторов допускают значительно большее количество уровней вложенности. Однако на практике необходимость в глубине вложенности, большей, чем несколько уровней, возникает довольно редко, так как увеличение глубины вложенности быстро запутывает программу и делает ее нечитаемой.
  • В следующем примере вложенный оператор if используется в программе для игры в магическое число. С его помощью играющий получает сообщение о характере ошибки.

Пример использования оператора if

  • Задача 2:
  • Написать программу простой игры "угадай магическое число".
  • Исходные данные: целое число magic – магическое число и целое число guess - попытка игрока .
  • Результаты работы программы: сообщения о том, верно или не верно угадано число.

Пример использования оператора if

Пример использования оператора if

#include <iostream> #include <stdlib.h> #include <time.h> using namespace std; int main(void) { int magic; // магическое число int guess; // попытка игрока srand(time(NULL)); magic = 1+rand()%101; //генерация магического числа cout << "Угадай магическое число: "; cin >> guess; if (guess == magic) { cout << "** Верно **"; cout << "Магическое число равно " << magic; } else { cout << "** Неверно, "; // вложенный if if(guess > magic) cout << "слишком большое\n"; else cout << "слишком малое\n"; } }

Условный оператор if

Замечание 1 if (a = 0) b=1; // Не правильно! if (a == 0) b=1; // Правильно! Замечание 2 if (0 < x < 1) y=5; // Не правильно! if (0 < x && x < 1) y=5; // Правильно!

Условный оператор if

  • Замечание 1. Не путайте операцию проверки равенства (==) и операцию присваивания (=). Например, в записи
  • if (a=0) b=1; синтаксической ошибке нет. Операция присваивания a=0 формирует результат, его значение проверяется в качестве условия. В данном примере присваивание b=1 не будет выполнено никогда, так как переменная a всегда будет принимать значение, равное нулю, то есть ложь. Верная запись if (a==0) b=1;
  • Замечание 2. Верно выполняйте запись условия проверки принадлежности диапазону

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.