for a:=1 to 9 do begin matrix[1] := a + 2; for b:=1 to 9 do begin matrix[2] := b + 2; for c:=1 to 9 do begin matrix[3] := c + 2; for d:=1 to 9 do begin matrix[4] := d + 2; for e:=1 to 9 do begin matrix[5] := e + 2; for f:=1 to 9 do begin matrix[6] := f + 2; for g:=1 to 9 do begin matrix[7] := g + 2; for h:=1 to 9 do begin matrix[8] := h + 2; for i:=1 to 9 do begin matrix[9] := i + 2;
S ? км, но одинаково
легк. за 5 час
груз. за 7 час
легк. в пути --- 4 часа
груз. в пути 5 час
сравнить путь.
Решение.
Примем все расстояние за 1.
1 : 5 = 1/5 часть расстояния, которое проходит за час легковая машина (скорость легковой)
1 : 7 = 1/7 часть расстояния, которое проходит за час грузовая машина (скорость грузовой)
(1/5) * 4 = 4/5 путь, который пройдет легковая машина за 4 часа
(1/7) * 6 = 6/7 путь, который пройдет грузовая машина за 6 часов.
Для сравнения приведем дроби к общему знаменателю 35 , т.к. 5*7=35
4/5 = (4*7)/(5*7) = 28/35
6/7 = (6*5)/(7*5) = 30/35
Из двух дробей с одинаковым знаменателем больше та, числитель которой больше.
30 > 28, значит и 6/7 > 4/5, следовательно грузовая машина за 6 часов пройдет больше, чем легковая за 4 часа.
ответ: грузовая пройдет больше.
11 10 4
5 9 6
8 3 7
Всего есть 72 решения данной задачи.
uses math;
var a,b,c,d,e,f,g,h,i: integer;
var matrix: array [1..9] of integer;
var counter: integer;
procedure check_matrix();
label repeated;
var i:integer;
var storage: array [1..9] of integer;
begin
for i := 1 to 9 do begin
storage[i] := 0;
end;
for i := 1 to 9 do begin
if storage[matrix[i] - 2] <> 0 then begin
goto repeated;
end;
storage[matrix[i] - 2] := 1;
end;
if (matrix[2] * matrix[3] = matrix[4] * matrix[7]) and (matrix[4] * matrix[6] = matrix[2] * matrix[8]) and (matrix[7] * matrix[8] = matrix[3] * matrix[6]) then begin
writeln('', matrix[1]:3, '', matrix[2]:3, '', matrix[3]:3);
writeln('', matrix[4]:3, '', matrix[5]:3, '', matrix[6]:3);
writeln('', matrix[7]:3, '', matrix[8]:3, '', matrix[9]:3);
writeln();
counter := counter + 1;
end;
repeated:;
end;
begin
counter := 0;
for a:=1 to 9 do begin
matrix[1] := a + 2;
for b:=1 to 9 do begin
matrix[2] := b + 2;
for c:=1 to 9 do begin
matrix[3] := c + 2;
for d:=1 to 9 do begin
matrix[4] := d + 2;
for e:=1 to 9 do begin
matrix[5] := e + 2;
for f:=1 to 9 do begin
matrix[6] := f + 2;
for g:=1 to 9 do begin
matrix[7] := g + 2;
for h:=1 to 9 do begin
matrix[8] := h + 2;
for i:=1 to 9 do begin
matrix[9] := i + 2;
check_matrix();
end; end; end; end; end; end; end; end; end;
writeln('total: ', counter);
end.