Доброго времени суток,
в прошлой статье мы с вами разобрали самые-самые базовые функции языка: ввод, вывод и узнали какие бывают типы данных.
В этой же статье мы с вами разберём: 1)что такое условный оператор.
2)Как правильно делать условия и применять их на практике.
Статья будет короткой, но достаточно прямой и понятной.
Итак, начнём!
Определение
Условный оператор - оператор, конструкция языка программирования , обеспечивающая выполнение определённой команды (набора команд) только при условии истинности некоторого логического выражения, либо выполнение одной из нескольких команд (наборов команд) в зависимости от значения некоторого выражения.
Проще: Мы даём программе сделать выбор исходя из нашего условия(которое мы зададим).
Ветвления
Существует 2 типа ветвления:
1)Полное ветвление;
2)Неполное ветвление;
Их различие в том, что в полном ветвление у нас, внезависимости от того удовлетворяет аргумент условию или нет, в любом случае выполняются различные наборы команд.
Т.е. если удовлетворяет условию, то выполняются команды по ветви положительного ответа оператора("True"),
А если не удовлетворяет условию, то выполняются команды ветви отрицательного ответа оператора("false").
К сведению: Условный оператор может вернуть нам только 2 значения: "True" и "False", где True=1; False=0;
В неполном ветвление у нас есть набор команд только на ветви "True",
Т. е. если условие ложно, то ничего не происходит(нет ветви else).
Код
В Pascal'е условный оператор выглядит так:
If(условие)
then(команды)
else(команды);
На заметку:
Условия можно вставлять в условие множество раз.
К примеру:
if(1=1) then
if(2=2) then
if(3=3) then
Writeln("1=1, 2=2, 3=3")
else writeln("Быть такого не может!")
Думаю, с устройством мы уже разобрались.
Перейдём к написанию кода, для закрепления.
Напишем код с полным и не полным ветвлением вместе.
Попробуйте взглядом прокомпилировать код и решить что будет на выводе.
Ответ после текстового варианта кода.
program yandexzen;
var x,y,z:integer;
begin
x:=0;
y:=0;
z:=5;
if(y>x) then
begin
x:=x+4;
y:=y-1;
end
else z:=z+1;
if(x+y+6=z) then
begin
x:=3;
y:=3;
end;
if(y>=x) then
begin
x:=x+4;
y:=y-1;
end
else z:=z+1;
if(z>y) then
if(y>x) then
begin
x:=x+5;
y:=y+5;
z:=z+5;
end
else y:=y+8;
writeln('x=',x,';y=',y,';z=',z);
end.
Как вы можете заметить для вывода текста я использую одинарные кавычки, а чтобы вывести после текста число, нужно поставить запятую перед числом, ну или с двух сторон запятую по необходимости. Компилятор, думаю, вам с этим поможет.
Ответ: x=7;y=10;z=6;
______________________________________________________________________________________
-Спасибо, что дочитали данную статью до конца. Надеюсь, она была вам полезна. Также если что-то осталось не разобранным и непонятным - пишите в комментарии. Подписывайтесь, дальше будет ещё интереснее.