Преобразовать последовательность, добавив к ней наименьшее число символов
Есть программа. Нужно сделать ввод элементов 3 способами:
- Массив X заполняется путем ввода данных с клавиатуры: из предопределенного файла Input;
- Массив X заполняется с использованием генератора равномерно-распределенных чисел;
- Массив X заполняется с использованием типизированной константы-массив;
Пока есть такой вариант программы (1 вариант)
var
a,w:string[255];
i,j,k,n,p,x:integer;
t,b:boolean;
begin
readln(a);
n:=length(a);
t:=true;
k:=n;
p:=0;
i:=1;
while (i<n) and t do
begin
i:=p+1;
if a[i]=a[n]
then
begin
j:=1;
b:=true;
x:=(n+1-i) div 2;
while (j<x) and b do
begin
if a[i+j]<>a[n-j]
then
b:=false;
inc(j);
end;
if b
then
t:=false
else
inc(p);
end
else
inc(p);
end;
writeln(p);
w:='';
for i:=1 to p do
w:=a[i]+w;
w:=a+w;
writeln(w);
readln;
end.
Источник: Stack Overflow на русском