Top.Mail.Ru
Ответы

Кто разбирается в программировании? Помогите написать программу!

На заводе по изготовлению паркета было принято решение изготавливать паркет только квадратной формы. Но заготовки поступают в виде прямоугольных листов древесины. поэтому, в целях экономии, решено было изготавливать паркет самых разных размеров (самое главное, чтобы он был квадратным) . Помогите определять максимальное число паркетных досок, которые можно получить из одного листа заготовки. Известно, что отрезать очередную паркетную доску от общего листа можно только одним прямолинейным разрезом. (Требуется написать программу, которая по длине и ширине прямоугольного листа заготовки вычислит, сколько максимально паркетных досок квадратного размера можно из него получить.)

Дополнен

язык программирования-Pascal

По дате
По рейтингу
Аватар пользователя
Новичок
10лет

Jet Set, НОД здесь не причем.
Полосатый жираф Алик, скорее всего, автор задачи забыл указать, что стороны прямоугольника - целые числа
Ариэль, если резать вдоль, то квадрат не получится. .

Если a и b - целые, то решаем так:

if a<b then begin t:=a; a:=b; b:=t end;
k:=0;
repeat
k:=k+a div b;
t:=a mod b;
a:=b;
b:=t
until b=0;
WriteLn(k)

Аватар пользователя
Мыслитель
10лет

Такое, что ли?
==================
var
l,w : integer;
begin
write('Введите длину листа: ');
readln(l);
write('Введите ширину листа: ');
readln(w);

writeln('Можно сделать ',int(l/w),' квадратов из листа. ');

end.

Аватар пользователя
Искусственный Интеллект
10лет

Если отношение длины к ширине будет иррациональным, то будешь резать до умопомрачения. Арифметика, однако!

Аватар пользователя
Ученик
10лет

прикольная программа конечно, мне кажется лучше в excell написать формулу и всё.

Аватар пользователя
Искусственный Интеллект
10лет

"можно только одним прямолинейным разрезом" это вдоль и/или поперек?