В этой статье разберём написание программы на языке программирования Pascal, которая на входе будет принимать длину стороны квадрата и выводить периметр квадрата.
Начнём с базового варианта, а после рассмотрим код, который предотвращает ввод пользователем отрицательного числа и нуля.
Код программы
Давайте сначала посмотрим на реализацию программы на Pascal, а после разберём подробно как она работает.
program SquarePerimeter;
var
side, perimeter: real;
begin
writeln('Введите длину стороны квадрата: ');
readln(side);
perimeter := 4 * side;
writeln('Периметр квадрата равен ', perimeter:0:2);
end.
Объяснение кода программы
program SquarePerimeter;: Эта строка определяет начало программы и задает ее имя как «SquarePerimeter».var side, perimeter: real;: Здесь объявляются переменныеsideиperimeterтипаrealдля хранения длины стороны квадрата и его периметра соответственно.begin: Это ключевое слово обозначает начало основного блока программы.writeln('Введите длину стороны квадрата: ');: Эта строка выводит на экран приглашение к пользователю ввести длину стороны квадрата.readln(side);: Этот оператор считывает введенное пользователем значение длины стороны квадрата и сохраняет его в переменнойside.perimeter := 4 * side;: Здесь вычисляется периметр квадрата, умножая длину стороны на 4, так как все стороны квадрата равны.writeln('Периметр квадрата равен ', perimeter:0:2);: Этот оператор выводит на экран значение переменнойperimeter, которое представляет собой вычисленный периметр квадрата. Оператор:0:2указывает на форматирование вывода: 0 означает, что необходимо вывести хотя бы одну цифру, а 2 — что нужно вывести две цифры после запятой.
Учитываем ввод отрицательных чисел и нуля
Длина стороны квадрата не может равняться нулю или быть отрицательной. Поэтому мы можем добавить в наш код цикл, который будет проверять, какое число ввёл пользователь в качестве длины квадрата.
program SquarePerimeter;
var
side, perimeter: real;
begin
repeat
writeln('Введите длину стороны квадрата: ');
readln(side);
until side > 0;
perimeter := 4 * side;
writeln('Периметр квадрата равен ', perimeter:0:2);
end.
Конструкция
repeat...untilв языке Pascal используется для создания цикла, который выполняет определенный блок кода (в данном случае, ввод длины стороны квадрата) до тех пор, пока условие (в данном случае,side > 0) не станет истинным.
Подробнее о работе этой конструкции в нашем примере:
repeat: Это ключевое слово начала цикла. Код, который находится после этого ключевого слова, будет выполняться по крайней мере один раз.writeln('Введите длину стороны квадрата: ');: Эта строка выводит приглашение пользователю ввести длину стороны квадрата.readln(side);: Этот оператор считывает введенное пользователем значение и сохраняет его в переменнойside.until side > 0;: После выполнения кода внутри блокаrepeat, программа проверяет условиеside > 0. Если это условие истинно (то есть введенное значение больше 0), цикл завершается и программа переходит к следующей части кода послеuntil. Если условие ложно (то есть введенное значение не больше 0), программа возвращается к началу блокаrepeatи повторяет процесс ввода.
Таким образом, эта конструкция обеспечивает ввод длины стороны квадрата только в том случае, если введенное значение положительно.








