Задать вопрос
17 января, 11:37

В исходной строке а определить количество слов содержащих ровно п символов строки х.

+5
Ответы (1)
  1. 17 января, 14:02
    0
    Const

    delim = [' ', ',', '.', ':', '; ', '!', '?']; {Набор разделителей}

    procedure GetWord (s: string; var ib: integer; var pWord: string; var l: integer) ;

    / / Возвращает слово pWord, которое является подстрокой s

    / / Разделителем слов являются один или более символов из delim.

    / / ib при вызове процедуры указывает на позицию в строке s,

    / / начиная с которой ведется поиск слова.

    / / При выходе из процедуры ib - позиция начала найденного слова,

    / / l - длина найденного слова, l=0 если слово не найдено.

    var

    i, n: integer;

    w: string;

    begin

    n : = Length (s) ;

    l : = 0;

    w : = '';

    if ib > = n then begin

    ib : = n;

    pWord : = ''

    end

    else begin

    i : = ib;

    while (s[i] in delim) and (i < n) do i : = i + 1;

    ib : = i;

    w : = '';

    while (not (s[i] in delim)) and (i < n) do

    begin

    w : = w + s[i];

    i : = i + 1

    end;

    if i < n then begin

    l : = i - ib;

    pWord : = w

    end

    else begin

    l : = i - ib + 1;

    pWord : = w + s[n]

    end

    end

    end;

    var

    w, x, a: string;

    n, k, i: integer;

    begin

    write ('Введите длину искомых слов n: ') ;

    readln (n) ;

    writeln ('Введите строку с искомыми словами (где искать) : ') ;

    readln (a) ;

    writeln ('Введите строку с шаблоном поиска (что искать) : ') ;

    readln (x) ;

    writeln ('Результаты поиска:') ;

    i : = 1;

    repeat

    GetWord (a, i, w, k) ;

    if k = n then

    begin

    if Pos (w, x) > 0 then writeln (w) ;

    end;

    i : = i + k

    until k = 0;

    end.

    Тестовое решение:

    Введите длину искомых слов n: 4

    Введите строку с искомыми словами (где искать) :

    Мама мыла раму, Маша мыла полы, а Таня не мыла ничего!

    Введите строку с шаблоном поиска (что искать) :

    Даша перемыла всю посуду.

    Результаты поиска:

    мыла

    мыла

    мыла
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «В исходной строке а определить количество слов содержащих ровно п символов строки х. ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы