Условный оператор пример программы

Рассмотрим случай, когда вы собираетесь пойти на рынок, и ваш сосед по комнате говорит вам: «Если у них есть клубника по скидке, купи». Это условное утверждение, означающее, что вы выполните какое-то действие («купите»), только если условие («у них есть клубника по скидке») верно.

Такие условия распространены в программировании, поскольку они позволяют нам реализовать в наших программах условное поведение. Самый простой вид условного оператора в C++ называется оператором if . Оператор if позволяет нам выполнять одну (или несколько) строк кода только в том случае, если выполняется какое-то условие.

Простейший оператор if принимает следующую форму:

if (условие) инструкция_выполняемая_если_условие_верно;

Для удобства чтения он чаще записывается следующим образом:

if (условие) инструкция_выполняемая_если_условие_верно;

Условие (также называемое условным выражением) – это выражение, результатом которого является логическое значение.

Если условие оператора if оценивается как логическое значение true , то выполняется инструкция_выполняемая_если_условие_верно . Если вместо этого условие принимает логическое значение false , то инструкция_выполняемая_если_условие_верно пропускается.

#17. Условный оператор if. Конструкция if-else | Python для начинающих

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

Рассмотрим следующую программу:

#include int main() < std::cout ; std::cin >> x; if (x == 0) std::cout

Вот результат одного запуска этой программы:

Enter an integer: 0 The value is zero

Давайте рассмотрим, как это работает более подробно.

Сначала пользователь вводит целое число. Затем вычисляется условие x == 0 . Оператор равенства ( == ) используется для проверки равенства двух значений. operator== возвращает true , если операнды равны, и false , если они не равны. Поскольку x имеет значение 0, а 0 == 0 истинно, это выражение оценивается как истинное.

Поскольку условие оценивается как true , выполняется следующая инструкция, выполняющая печать « The value is zero ».

Вот результат еще одного запуска этой программы:

Enter an integer: 5

В этом случае x == 0 оценивается как false . Следующая инструкция пропускается, программа завершается и больше ничего не печатается.

Предупреждение

Операторы if условно выполняют только одну инструкцию. О том, как условно выполнять несколько инструкций, мы говорим в уроке «7.2 – Операторы if и блоки».

if — else

Учитывая пример, приведенный выше, что, если бы мы хотели сообщить пользователю, что введенное число не равно нулю?

Читайте также:
Как создать программу в cheat engine

7.9. Примеры программ с условным оператором

Приведем несколько примеров законченных программ, использующих РВП.

Пр. Проверить, может ли быть построен прямоугольный треугольник по длинам сторон a,b,c.

Проблема с решением этой задачи – не в проверке условия теоремы Пифагора, а в том, что в условии не сказано, какая из сторон может быть гипотенузой. Решений возможно несколько – запрашивать у пользователя ввод данных по возрастанию длины сторон, проверять все три возможных условия теоремы Пифагора и т.п. Используем наиболее естественное решение – перед проверкой условия теоремы Пифагора упорядочим величины a,b,cтак, чтобы выполнялись соотношенияa≤b≤c. Для этого используем прием с обменом значений переменных из главы 4.

Урок. «Условный оператор на языке Паскаль Пример программы»

write (‘Введите длину 1 стороны (больше 0):’);

write (‘Введите длину 2 стороны (больше 0):’);

write (‘Введите длину 3 стороны (больше 0):’);

if (a>b) then begin

if (a>c) then begin

if (b>c) then begin

(‘Прямоугольный треугольник может быть построен!’)

(‘Прямоугольный треугольник не может быть построен!’)

Пр. Определить, попадает ли точка плоскости, заданная координатами (a,b) в прямоугольник, заданный координатами двух углов (x1,y1) и (x2,y2).

Как и в предыдущей задаче, было бы не совсем корректно требовать от пользователя вводить данные в определенном порядке – гораздо лучше при необходимости поменять x- иy-координаты прямоугольника так, чтобы пара переменных (x1,y1) содержала координаты левого нижнего угла прямоугольника, а (x2,y2) – правого верхнего.

writeln (‘Введите координаты первого угла:’);

writeln (‘Введите координаты второго угла:’);

if x1>x2 then begin

if y1>y2 then begin

writeln (‘Введите координаты точки:’);

writeln (‘Точка попадает в прямоугольник’)

writeln (‘Точка НЕ попадает в прямоугольник’);

Пр. Вводится денежная сумма в рублях и копейках. Программа печатает введенную сумму с правильной формой слов «рубли» и «копейки», например, «123 рубля 15 копеек».

Окончание, используемое для слов «рубли» и «копейки», зависит от последней цифры суммы, которую можно получить, взяв остаток от деления на 10 (1058 рублей, 38рублейи т.д.). Исключения – суммы с последними двумя цифрами от 11 до 19 включительно, которые всегда произносятся «рублей» и «копеек» (511рублей, но 51рубль). Используя эту информацию, составим программу.

write (‘Введите количество рублей, затем пробел и количество копеек:’);

write (‘Правильно сказать: ‘,r,’ ‘);

Читайте также:
Дизайн проект детской комнаты самостоятельно программа

if (o100>10) and (o100<20) or (o10>4) or (o10=0) then write (‘рублей’)

else write (‘рубль’);

if (o100>10) and (o100<20) or (o10>4) or (o10=0) then write (‘копеек’)

else write (‘копейка’);

Источник: studfile.net

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

Условные операторы – это конструкции, которые используют условные выражения для управления ходом выполнения программы.

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

Условный оператор if – используется в случаях, когда выполнение инструкции, или набора инструкций, зависит от некоторого логического выражения.

В языке C#, есть две формы условного оператора if: с неполным и полным ветвлением.

if с неполным ветвлением

Оператор с неполным ветвлением имеет следующий синтаксис:

if (условное_выражение) инструкция;

Пример на языке C#:

int a = 0; int b = 12; if (a < b) Console.WriteLine(a);

Для выполнения нескольких инструкция, необходимо взять их в операторные скобки:

double c = 8; double d = 4; if (d != 0) < var f = c / d; Console.WriteLine(z); >

if с полным ветвлением

В операторе if с полным ветвлением, дополнительно используется ключевое слово else:

int n = 8; int m = 0; if (m == 0) < Console.WriteLine(«Делить на ноль нельзя!»); > else < var r = n / m; Console.WriteLine(r); >

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

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

Рассмотрим задачу определения какой четверти координатной плоскости принадлежит точка с координатами (x, y). Будем считать, что точка не может лежать на осях.

Координатная площадь

Код программ для определения в какой четверти лежит заданная точка:

using System; class Program < static void Main(string[] args) < Console.Write(«x hljs-comment»>//читаем данные из консоли, и конвертируем их в int int x = Convert.ToInt32(Console.ReadLine()); Console.Write(«y hljs-keyword»>int y = Convert.ToInt32(Console.ReadLine()); //переменная для хранения номера четверти string q; //код для проверки if (y > 0) < if (x > 0) q = «I»; else // x < 0 q = «II»; > else // y < 0< if (x < 0) q = «III»; else // x > 0 q = «IV»; > Console.WriteLine($»Точка лежит в четверти»); Console.ReadLine(); > >

Тернарный условный оператор ?:

Тернарный оператор – единственный оператор языка С#, который работает сразу с тремя операндами, в зависимости от результата условия, которое задано в первом операнде, возвращает значение второго(если первый — true), или третьего(если первый — false) операнда. При этом второй и третий должны быть одинакового типа данных.

int a = 3; int b = 4; int m = a < b ? a : b; //m = a = 3 //аналог записи if(a < b) < m = a; >else < m = b; >int n = a > b ? a : b; //n = b = 4 //аналог записи if(a > b) < n = a; >else

Читайте также:
Кто из педагогов является автором программы юный эколог

Тернарный оператор в качестве операндов может принимать другие тернарные операторы.

Если переписать код программы из предыдущего примера, с использованием тернарного оператора, то получим:

using System; class Program < static void Main(string[] args) < Console.Write(«x hljs-keyword»>int x = Convert.ToInt32(Console.ReadLine()); Console.Write(«y hljs-keyword»>int y = Convert.ToInt32(Console.ReadLine()); string q = y > 0 ? (x > 0 ? «I» : «II») : (x < 0 ? «III» : «IV»); Console.WriteLine($»Точка лежит в четверти»); Console.ReadLine(); > >

Как можно видеть, вся логика работы программы уместилась в одну строку кода.

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

Конструкция switch позволяет сравнивать значение выражения сразу с несколькими вариантами.

Рассмотрим код, который конвертирует оценку пятибалльной шкалы из числа в текстовое представление:

Console.Write(«Введите оценку от 1 до 5: «); var r = Convert.ToByte(Console.ReadLine()); string v; if (r == 1 || r == 2) < v = «Неудовлетворительно»; > else if (r == 3) < v = «Удовлетворительно»; > else if (r == 4) < v = «Хорошо»; > else if (r == 5) < v = «Отлично»; > else < v = «Ошибка»; > Console.WriteLine(v);

С использованием switch код будет выглядеть так:

switch (r) < case 1: case 2: v = «Неудовлетворительно»; //этот код выполняется когда r равен 1 или 2 break; case 3: v = «Удовлетворительно»; break; case 4: v = «Хорошо»; break; case 5: v = «Отлично»; break; default: v = «Ошибка»; break; >

Выражение соответствия в скобках после switch, сравнивается с вариантами(метками), которые находяться за ключевым словом case. Если они эквивалентны, то выполняются инструкции до оператора break, который указывает на то, что нужно выйти из блока switch. В случае когда сравниваемое значение не соответствует ни одному из вариантов, выполняется блок default.

Для перехода с одного блока case в другой, можно использовать оператор goto case:

var s = «a»; var t = 1; switch (s) < case «a»: t += 10; goto case «c»; case «b»: t += 100; break; case «c»: t += 1000; break; > // после выхода t = 1011;

Блок default не обязательный. Если он не указан, а соответствия нет, то происходит выход из switch.

Использование break после операторов return, throw и goto case не обязательное.

Начиная с C# версии 7.0, выражение соответствия может быть любым выражением отличным от null. В предыдущих версиях языка допускались только: целочисленные, символьные, строковые, логические типы данных и перечисления.

Источник: programm.top

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru