Let and
Пусть Вам дано (то есть, попросту говоря изображены на плоскости) K прямоугольников
Let us first describe two procedures that we will use later to describe the method to construct a required rectangle R.
1) Procedure Rectangle → Square: a rectangle with sides a and b has equal area with a square with side c which can be find according to the left figure below.
2) Procedure Squares → Square: two squares with sides a and b have area that is equal to the area of the square with side c that can be find according to the right figure below.
прямоугольник → квадрат
квадраты → квадрат
Description of the method to construct a square (i.e. a rectangle with equal sides) R :
1) Let L be the list
2) while L contains 2 or more rectangles repeat the following:
2.1) remove any two rectangles and from the list L;
2.2) using procedure Rectangle → Square build two squares and that have equal areas with and respectively;
2.3) using procedure Squares → Square build a square that has equal area with the squares and
2.4) push square Q to the list L;
3) let R — be the only rectangle that remains in the list L.
Сначала опишем пару процедур, в терминах которых потом опишем метод построения прямоугольника R.
1) Процедура
2) Процедура
прямоугольник → квадрат
квадраты → квадрат
Теперь опишем метод построения квадрата (то есть прямоугольника очень специального вида) R:
1) пусть L — это список
2) пока L состоит из двух или более прямоугольников повторять следующие действия:
2.1) изъять из списка L два первых прямоугольника и
2.2) используя процедуру прямоугольник → квадрат построить по и равновеликие с ними квадраты и
2.3) используя процедуру квадраты → квадрат построить по квадратам и равновеликий с ними квадрат Q;
2.4) добавить квадрат Q в список L;
3) пусть R — единственный оставшийся квадрат в L.