Помощь - Поиск - Пользователи - Календарь
Полная версия: string составить строку из разных элементов двух других строк.
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
condemime
Даны 2 строки S1 и S2. Создать строку, состоящую из символов, входящих либо в S1 либо в S2, но не в обе сразу.
Я соединил две эти строки в одну и пытался удалять одинаковые элементы, но никаких успехов. Я плохо знаю функции паскаля и всё в основном ограниченно for да if, а когда буду сдавать, то каждый элемент придется разъяснять(((
Ромаха
Цитата(condemime @ 7.11.2013 19:32) *

Даны 2 строки S1 и S2. Создать строку, состоящую из символов, входящих либо в S1 либо в S2, но не в обе сразу.
Я соединил две эти строки в одну и пытался удалять одинаковые элементы, но никаких успехов. Я плохо знаю функции паскаля и всё в основном ограниченно for да if, а когда буду сдавать, то каждый элемент придется разъяснять(((



Я бы делал так :
s3 := '';
for i := 1 to Length(s1) do
if Pos (s1[i], s2) = 0 then
s3 := s3 + s1[i];

for i := 1 to Length(s2) do
if Pos (s2[i], s1) = 0 then
s3 := s3 + s2[i];

WriteLn (s3)
condemime
Рабочая программа. Мб пригодится кому то.
program lab4_7;
var s1,s2,s3:string;
i:integer;
begin
{вводим S1 и s2, s3-пустая строка}
writeln(‘vv s1’); readln(s1);
writeln(‘vv s2’); readln(s2);
s3:=’’;
{если позиция элемента s1(s2) в строке s2(s1) = 0,
значит его там нет}
for i:=1 to length(s1) do if pos(s1[i], s2)=0 then s3:=s3+s1[i];
for i:=1 to length(s2) do if pos(s2[i], s1)=0 then s3:=s3+s2[i];
{выводим s3 на экран}
writeln(s3); readln; end.

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.