Составить программу в Паскале.
Вам дано три числа ab и c. Вы должны в таком порядке приписать эти числа друг к другу, чтобы в результате получилось минимальное число. Например, если a=12, b=5, c=3, приписыванием можно получить числа 125312353125351251235312. Минимальным среди этих чисел является 1235.

Ответы

Ответ дал: sellsaccount
0
var a, b, c, p1, p2, p3, p4, p5, p6 :longint;
    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;
Ответ дал: julichitai
0
спасибо огромное:)
Вас заинтересует