Определить, сколько квадратов получится, если каждый раз выбирается самый большой квадрат - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Написать программу для решения задачи. Задан прямоугольник со сторонами а и b. Разбиваем его на части с помощью квадратов. Определить, сколько квадратов получится, если каждый раз выбирается самый большой квадрат.

Решение задачи: «Определить, сколько квадратов получится, если каждый раз выбирается самый большой квадрат»

textual
Листинг программы
var
  a, b, n: integer;
 
begin
  writeln('Введите стороны прямоугольника (a,b) :');
  readln(a, b);   
  while (a > 0) and (b > 0) do
  begin
    if a > b then a := abs(a - b) else
      b := abs(a - b);
    inc(n);    
  end;
  writeln('Получится квадратов -',n);
end.

Объяснение кода листинга программы

  1. В начале объявляются переменные a, b и n типа integer.
  2. Затем выводится сообщение для ввода сторон прямоугольника (a,b).
  3. С помощью функции readln считываются значения a и b.
  4. Далее идет условный цикл while, который выполняется до тех пор, пока a и b не станут равными нулю.
  5. Внутри цикла проверяется, какая сторона больше. Если a больше b, то вычисляется разность между ними и присваивается переменной a. Если b больше a, то вычисляется разность между ними и присваивается переменной b.
  6. После этого увеличивается значение переменной n на единицу.
  7. По завершении цикла выводится сообщение с количеством получившихся квадратов.

Оцени полезность:

7   голосов , оценка 3.857 из 5
Похожие ответы