ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Истина (да) ложь (нет)
ЕСЛИ (условие) ТО цепочка-1 В альтернативе в качестве условия используется логическое выражение, которое, как известно, может быть истинным или ложным. Действие альтернативы: 1) проверяется выполнение условия, 2) если условие истинно, то выполняется следующая за ним цепочка-1, 3) если условие ложно, то выполняется цепочка-2, если она имеется. В Си альтернатива реализуется условным оператором: If (условие) Оператор-1; Else оператор-2; где условие – это любое логическое выражение (обязательно ставится в скобки). В каждой ветке альтернативы может следовать только один оператор языка, причем перед else точка с запятой ставитсяобязательно. Примеры 1. Определить значения переменной z после выполнения операторов: x = 1; z = 3; if (x – z > 0) в данном случае условие ложно, поэтому z = z – 1; будетвыполняться ветвь else, и, значит, else z = z + 1; z = 4 2. Определить наибольшую из двух переменных a и b, присвоив ее значение переменной с: данет
Словесное описание алгоритма: ЕСЛИ (a > b) ТО c = a ИНАЧЕ c = b; Реализуем этот алгоритм на Си: if (a > b) c = a; else c = b; 3. Решить эту же задачу сокращенной альтернативой: а)двумя сокращенными альтернативами: if (a > b) c = a; if (b > a) c = b;
б)одной сокращенной альтернативой: c = b; if (a > b) c = a;
Реализация альтернативы усложняется, если в каждой ее ветви имеется не по одному оператору, а по цепочке операторов. В этом случае цепочки заключаются в фигурные скобки: sin c, если c < 2,5 a = cos c, если c ≥ 2,5 | c |, если c < 2,5 b = 1/c, если c ≥ 2,5
На Си: if (c < 2.5) Внимание! Перед служебным словом { elseставится точка с запятой! a=sin(c); b=fabs(c); } Else { a=cos(c); b=1.0/c; } Еще раз необходимо обратить внимание на то, что в Си после закрывающей фигурной скобки точка с запятой не ставится, а перед ней – обязательно. В каждой ветви условного оператора if могут, в свою очередь, стоять новые операторы if, что дает возможность использовать вложение операторов if до любого уровня. Примеры 1. Определить наибольшую из трех переменных x, y,z и присвоить ее значение переменной s:
а) с использованием полной альтернативы: ЕСЛИ (x > y) if (x > y) ТО ЕСЛИ (x > z) if (x > z) ТО s = x s=x; ИНАЧЕ s = z else s=z; ИНАЧЕ ЕСЛИ (y > z) else if (y > z) ТО s = y s=y; ИНАЧЕ s = z; else s=z; б) с использованием усеченной альтернативы: вариант 1
s = z; s = z; ЕСЛИ (x > y) if (x > y) ТО ЕСЛИ (x > z) if (x > z) ТО s = x; s=x; ЕСЛИ (y > x) if (y >x) ТО ЕСЛИ (y > z) if (y > z) ТО s = y; s=y; вариант 2 – с использованием операции конъюнкции s = z; s = z; ЕСЛИ (x > y) & (x > z) if ((x > y) && (x > z)) ТО s = x; s=x; ЕСЛИ (y > x) & (y > z) if ((y >x) && (y > z)) ТО s = y; s=y;
2. По заданной дате (день, месяц, год) определить день недели, приходящийся на нее: #include <stdio.h> #include <conio.h> #include <math.h> Int main() { Не нашли, что искали? Воспользуйтесь поиском:
|