Pascal ABC Дана строка, состоящая из слов (разбитых пробелами) и строка символов. Необходимо выяснить, можно ли из символов строки 2 получить слова из строки 1. Если можно, то вывести эти слова, иначе вывести NO. (буквы из набора можно использовать несколько раз)
Входные данные
Строка содержащая слова через пробел и строка с набором букв
Выходные данные
Слова, которые можно получить из символов второй строки или слово NO
Для примера:

Ввод
hello i love you
ieohuyvl
Результат
hello
i
love
you

longassride longassride    3   16.01.2022 15:04    6

Ответы
Marinatarina Marinatarina  21.02.2022 01:33

var slova, bukvy, slovo : string;

   i, b, k, c, j, l, kolvo, dlina1, dlina2 : integer;

   a : array[1..50] of string;

begin

 Writeln('Введите слова');

 Readln(slova);

 Writeln('Введите буквы');

 Readln(bukvy);

 dlina1 := length(slova);

 dlina2 := length(bukvy);

 k := 1;

 for i := 1 to dlina1 do

   if slova[i] = ' ' then

     k := k + 1;

 writeln(k);

b := 1;

i := 1;

while i <= length(slova) do

begin

 if (slova[i] <> ' ') and (i <> length(slova)) then

   slovo := slovo + slova[i]

 else

 begin

   a[b] := slovo;

   slovo := '';

   b := b + 1;

 end;

i := i + 1;

end;

a[k] := a[k] + slova[length(slova)];

b := 0;

l := 0;

for i := 1 to 50 do

 if a[i] <> '' then

   begin

   slovo := a[i];

   for k := 1 to length(slovo) do

     for c := 1 to length(bukvy) do

       if slovo[k] = bukvy[c] then

         j := j + 1;

   if j = length(slovo) then

   begin

     writeln(slovo);

     l := l + 1;

     j := 0;

   end;

   end;

if l = 0 then

 writeln('NO');

end.

Объяснение:

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика