Вводится текст, разбитый на две строки знаком ";". Удалить из этой пары строк все повторяющиеся символы, общие для этой пары строк

Вывести на экран исходный текст и результат его преобразования.

code: #pascal
Program PascalGuru;
label 1,2,3;
 
var s,s1,s2:string;
    i,j,p:integer;
    b:boolean;
 
begin
write('Vvedite stroky razdelennuyu ";": ');
readln(s);
 
p:=pos(';',s);
s1:=copy(s,1,p-1);
s2:=copy(s,p+1,length(s)-p);
 
1:
for i := 1 to length(s1) do
begin
 b := true;
 for j := 1 to length(s1) do
 if (i<>j) and (s1[j]=s1[i]) then b:=false;
 if b then begin delete(s1,i,1); goto 1; end;
end;
 
2:
for i := 1 to length(s2) do
begin
 b := true;
 for j := 1 to length(s2) do
 if (i<>j) and (s2[j]=s2[i]) then b:=false;
 if b then begin delete(s2,i,1); goto 1; end;
end;
 
3:
for i := 1 to length(s) do
if s[i]<>';' then
if (pos(s[i],s1)<>0) and (pos(s[i],s2)<>0) then
   begin
    for j := 1 to length(s) do
     if s[i]=s[j] then delete(s,j,1);
    goto 3;
   end;
 
writeln('Preobrazovannaya stroka: ',s);
readln;
end.      
Поделиться:

Похожие статьи: