В этой статье мы разберём как написать программу на языке программирования Pascal для нахождения периметра прямоугольника. Данная программа будет принимать от пользователя длину и ширину прямоугольника и выводить его периметр.
Программы будет вычислять периметр по формуле P = 2 × (a + b), где a и b — длина и ширина прямоугольника соответственно.
Давайте для начала напишем код программы, а после подробно разберём его работу построчно.
Код программы для нахождения периметра прямоугольника
program RectanglePerimeter;
var
length, width, perimeter: real;
begin
writeln('Введите длину прямоугольника: ');
readln(length);
writeln('Введите ширину прямоугольника: ');
readln(width);
perimeter := 2 * (length + width);
writeln('Периметр прямоугольника равен ', perimeter:0:2);
end.
Разбор кода программы
program RectanglePerimeter;— Объявление программы с названием «RectanglePerimeter».var— Объявление переменных:length, width, perimeter: real;— Объявление переменныхlength,widthиperimeterтипаrealдля хранения длины, ширины и периметра прямоугольника соответственно.
begin— Начало основной части программы.writeln('Введите длину прямоугольника: ');— Вывод на экран сообщения «Введите длину прямоугольника: «.readln(length);— Чтение значения длины прямоугольника, введенного пользователем, и сохранение этого значения в переменнойlength.writeln('Введите ширину прямоугольника: ');— Вывод на экран сообщения «Введите ширину прямоугольника: «.readln(width);— Чтение значения ширины прямоугольника, введенного пользователем, и сохранение этого значения в переменнойwidth.perimeter := 2 * (length + width);— Вычисление периметра прямоугольника согласно формуле P = 2 × (length + width), гдеlengthиwidth— длина и ширина прямоугольника соответственно, и сохранение результата в переменнуюperimeter.writeln('Периметр прямоугольника равен ', perimeter:0:2);— Вывод на экран сообщения «Периметр прямоугольника равен » с вычисленным значением периметра, округленным до двух знаков после запятой.end.— Конец программы.
Дорабатываем программу для учета отрицательных чисел
Наша программа сейчас находит периметр, но мы можем доработать её так, чтобы пользователь не мог ввести отрицательное число или ноль в качестве длины или ширины прямоугольника. Для этого мы можем использовать цикл repeat...until.
Давайте посмотрим на доработанный код программы:
program RectanglePerimeter;
var
length, width, perimeter: real;
begin
repeat
writeln('Введите длину прямоугольника: ');
readln(length);
until length > 0; // Повторять ввод, пока длина не будет неотрицательной
repeat
writeln('Введите ширину прямоугольника: ');
readln(width);
until width > 0; // Повторять ввод, пока ширина не будет неотрицательной
perimeter := 2 * (length + width);
writeln('Периметр прямоугольника равен ', perimeter:0:2);
end.
Конструкция repeat...until в Pascal представляет собой цикл, который выполняет блок кода между repeat и until до тех пор, пока указанное условие в until не станет истинным.
В данном случае, код repeat...until length > 0 означает следующее:
- Сначала программа выполняет код, который находится между
repeatиuntil. - После выполнения этого кода проверяется условие, указанное в
until. Если условие истинно (в данном случае,length > 0), то цикл завершается и программа продолжает свое выполнение. - Если условие ложно, то цикл повторяется: программа вновь выполняет код между
repeatиuntil, а затем снова проверяет условие вuntil.








