var
a, b, n, i, j, t: integer;
s, sn: string;
begin
write ('введите начало отрезка: ');
readln (a);
write ('введите окончание отрезка: ');
readln (b);
n : = 0;
for i : = a to b do begin
s : = inttostr (i);
t : = 1;
for j : = 1 to length (s) do
t : = t * strtoint (s[j]);
if t > n then begin
sn : = s;
n : = t;
end;
end;
writeln ('число с наибольшим произведением цифр: ' + sn);
end;
program sorting;
const
N = 10;
var
v: array[1..N] of integer;
d: integer;
i, t: integer;
k: boolean;
begin
randomize;
write('ДО сортировки: ');
for i := 1 to N do
begin
readln(v[i])
write(v[i]:6);
end;
}
d := N div 2;
while(d > 0) do
begin
k := true;
while k do
begin
k := false;
i := 1;
for i := 1 to N - d do
begin
if(v[i] > v[i + d]) then
begin
t := v[i];
v[i] := v[i + d];
v[i + d] := t;
k := true;
end;
end;
end;
d := d div 2;
end;
writeln;
write('ПОСЛЕ сортировки: ');
for i := 1 to N do
write(v[i]:6);
writeln;
end.