Var s,p1,p2: string; a: array['a'..'z'] of byte; n,i,j,f: integer; c,sim: char; begin readln(n); readln(s); for c: ='a' to 'z' do a[c]: =0; for i: =1 to length(s) do a[s[i]]: =a[s[i]]+1; p1: =''; p2: =''; f: =0; for c: ='a' to 'z' do begin for j: =1 to a[c] div 2 do begin p1: =p1+c; p2: =c+p2; end; if (a[c] mod 2=1)and(f=0) then begin sim: =c; f: =1; end; end; if f=1 then p1: =p1+sim; p1: =p1+p2; writeln(p1); end. пример: 6 qazqaz aqzzqaps. программа проверялась только для коротких (string) строк. для длинных нужно использовать ansistring.
soa8690
15.04.2023
Var ma: array[1..4,1..5] of integer; ar: array[1..20] of integer; k,i,j: integer; begin; randomize; writeln('matrix: '); for i: =1 to 4 do begin; writeln; for j: =1 to 5 do begin; ma[i,j]: =random(-10,10); if ma[i,j]< 0 then begin; inc(k); ar[k]: =ma[i,j]; end; write(ma[i,j]: 4); end; end; writeln; writeln('final array: '); for i: =1 to k do write(ar[i]: 4); end.