Продолжаем изучать язык программирования Паскаль. Рассмотрим первую алгоритмическую конструкцию, которая изучается при изучении языка — условие (ветвление). Статья предназначения для начинающих программистов, а также для учителей информатики. Задачи в конце статьи помогут закрепить знания и проверить себя.
Алгоритмическая конструкция УСЛОВИЕ используется в тех случаях, когда перед нами стоит выбор: сделать так или иначе.
Условие бывает:
Блок-схема неполного условия выглядит следующим образом:
ЕСЛИ УСЛОВИЕ ИСТИННО, ТО ВЫПОЛНЯЕТСЯ ДЕЙСТВИЕ, ИНАЧЕ НИЧЕГО НЕ ПРОИСХОДИТ
На языке Паскаль данная алгоритмическая конструкция выглядит следующим образом:
Если условие, стоящее после IF истинно, то выполняется действие, стоящее после слова THEN.
Что такое условие?
Условие — это выражение, которое может быть либо истинным, либо ложным. Условие обязательно содержит логические операторы <, >, =, <=, >=, <> (не равно).
Например:
var a:integer; begin readln(a); if a=7 then writeln('Привет!'); end.
Если введенное значение переменной a равно 7, то на экране мы увидим слово Привет! Если не равно — то на экран ничего выводится не будет.
Рассмотрим другой пример:
var a:integer; begin readln(a); if a=7 then writeln('Привет!'); writeln('До встречи'); end.
Что мы увидим на экране, введя число 7? Увидим:
Привет!
До встречи
Что мы увидим на экране, введя число 10?
До встречи
Почему так? Почему До встречи выводится на экран в любом случае? Команда
writeln('До встречи');
не относится к конструкции If-Then
var a:integer;
begin
readln(a);
if a=7 then writeln('Привет!');
writeln('До встречи'); // условие подсвечено голубым цветом end.
Как сделать так, чтобы оба действия относились к конструкции If-Then?
Необходимо заключить эти действия в так называемые операторные скобки: begin… end;
Получим:
var a:integer; begin readln(a);
if a=7 then begin
writeln('Привет!');
writeln('До встречи');
end;
end.
Теперь, если мы введем число 10, то на экране ничего не увидим.
Иногда приходится использовать сложное условие. Для его составления используются логические союзы: and или or.
Например:
a>7 и a<15 на языке паскаль будет записываться
(a>7) and (a<15)
т.е. оба условия должны выполняться одновременно, чтобы составное условие было истинно
Или:
(a=7) or (a>15)
Составное условие будет истинно, если: либо a=7, либо a>17.
Задача:
Используя конструкцию If-Then, найти максимальное среди трех введенных чисел.
Решение
var a, b, c:integer; begin readln(a); readln(b); readln(c); if (a>b) and (a>c) then writeln('число ', a, ' максимальное'); if (b>a) and (b>c) then writeln('число ', b, ' максимальное'); if (c>a) and (c>b) then writeln('число ', c, ' максимальное'); end.
Блок-схема полного условия выглядит так:
Если действий, которые выполняются, если условие истинно или ложно несколько — используются операторные скобки.
if условие then begin действие; действие; ............... end else begin действие; действие; ................ end;
(перед else точка с запятой не ставится)
Задачи для самостоятельного выполнения:
(список задач будет пополняться)
Настала пора написать серию мини-обучалок по решению задач ЕГЭ по информатике версии 2021 года. В…
Данная статья будет полезна для учителей информатики, которые занимаются программированием с детьми внеурочно. Опыт показывает, …
Рассмотрим набор наиболее часто встречающихся задач на программирование в школьном курсе информатики. Добавляйте свои задачи…
В прошлый раз мы разобрали первые две задачи школьного тура Всероссийской олимпиады школьников, проводимой в…
Закончился школьный тур Всероссийской олимпиады школьников. Разберем первую и вторую задачи тура, проводимого в московских…
Задача. В плацкартном вагоне 54 места, пронумерованных числами от 1 до 54. Вагон разбит на 9…