Условие: Из цифр двух натуральных чисел составить наибольшее возможное число, сохраняя первоначальную последовательность цифр.
Технические условия: Программа должна читать исходные числа из файла input.txt, и выводить полученое число в файл output.txt.
Примеры входных и выходных файлов: Input.txt 20 4181 Output.txt 421810
Input.txt 111 222 Output.txt 222111
Input.txt 97531 86420 Output.txt 9876543210
Решение: Идея решения. Можно прочитать числа из файла как текстовые переменные, а затем посимвольно переводить изображения цифр в цифры, и составлять наибольшее число.
var a,b,c:String; i,x,y,code:integer; begin assign(input,'input.txt'); reset(input); readln(A); readln(B); while (a<>'') and (b<>'') do begin val(a[1],x,code); val(b[1],y,code); if x>y then begin c:=c+a[1]; delete(a,1,1); end else begin c:=c+b[1]; delete(b,1,1); end; end; c:=c+a+b; assign(output,'output.txt'); rewrite(output); writeln(c); end.