Найти все равновеликие прямоугольники, стороны которых выражены целыми числами a и b, а площадь равна S (a и b принадлежат интервалу от 1 до 20, а S вводится с клавиатуры)- Pascal(Паскаль)

uses CRT;
VAR
 a, b, S: Longint;
 Code: Integer;
BEGIN
 {Опять два способа: через строку и через MOD}
 Write('Введите значение площади (целое число): ');
 repeat
  {$I-} ReadLn(S); {$I+}
  (* {$I-} означает "отключить контроль операций ввода/вывода"
   При этом при ошибке не происходит аварийного завершения
   работы программы, но код оперции генерируется.
   {$I+} - включить контроль. Это нужно всегда иметь включенным.
   Вывод на диск ... - это тоже операции ввода/вывода *)
  code := IOResult;   {Узнаем код операции}
  if (code <> 0) or (S < 2) then
   Write('Ошибка ввода. Повторите');
 until code = 0;      {О кодах достаточно знать одно - 0 = хорошо}
 code := 0; {Это будет число прямоугольников, чтобы, если нет,
             то вывести сообщение об этом}
 for a := 1 to 20 do
   for b := 1 to 20 do
    if a*b = S then begin
     WriteLn(a,' * ',b,' = ',S);
     inc(code)
    end;
 if code = 0 then WriteLn('Таких прямоугольнков нет');
END.

Leave a Comment

8 + 1 =