Составить программу в паскале. вам дано три числа a, b и c. вы должны в таком порядке приписать эти числа друг к другу, чтобы в результате получилось минимальное число. например, если a=12, b=5, c=3, приписыванием можно получить числа 1253, 1235, 3125, 3512, 5123, 5312. минимальным среди этих чисел является 1235.
a: array[1..3] of string;
i, j, k, min, x: integer;
begin
for i := 1 to 3 do
begin
write('Введите ',i,' число:');
readln(a[i]);
end;
x := StrToInt(a[1] + a[2] + a[3]);
min := x; for i := 1 to 3 do
for j := 1 to 3 do
if j <> i then
for k := 1 to 3 do
if (j <> k) and (i <> k) then
begin
x := StrToInt(a[i] + a[j] + a[k]);
if x < min then min := x;
end;
writeln('min=', min)
end.
s1, s2, s3, s4, s5, s6, a1, b1, c1 :string;
begin
read (a);
read (b);
read (c);
str(a,a1);
str(b,b1);
str(c,c1);
s1:=a1+b1+c1;
s2:=a1+c1+b1;
s3:=b1+a1+c1;
s4:=b1+c1+a1;
s5:=c1+a1+b1;
s6:=c1+b1+a1;
val(s1,p1,a);
val(s2,p2,a);
val(s3,p3,a);
val(s4,p4,a);
val(s5,p5,a);
val(s6,p6,a);
a:=p1;
if p2<a then a:=p2;
if p3<a then a:=p3;
if p4<a then a:=p4;
if p5<a then a:=p5;
if p6<a then a:=p6;
writeln(a);
end.
P.S. Грубо говоря мы собираем все возможные варианты, потом находим наименьшее и выводим его.
P.S.S. val(a, b, c) это процедура преобразования строки а в числовое значение b, а c проверка, преобразовалась ли она правильно.
И str(a, b) процедура перевода числового значения a, в строку b;