Статистика
Всего в нашей базе более 4 327 663 вопросов и 6 445 976 ответов!

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

10-11 класс

Maysa100kg 16 дек. 2013 г., 19:10:01 (10 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
Yulia20002
16 дек. 2013 г., 19:42:07 (10 лет назад)

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
Введите строку с искомыми словами (где искать):
Мама мыла раму, Маша мыла полы, а Таня не мыла ничего!
Введите строку с шаблоном поиска (что искать):
Даша перемыла всю посуду.
Результаты поиска:
мыла
мыла
мыла



+ 0 -
Felll
16 дек. 2013 г., 20:40:04 (10 лет назад)

Комментарий удален

+ 0 -
Rudakovanastya
16 дек. 2013 г., 22:03:48 (10 лет назад)

Комментарий удален

+ 0 -
светяня
17 дек. 2013 г., 0:34:13 (10 лет назад)

Комментарий удален

+ 0 -
Nika879076
17 дек. 2013 г., 2:16:21 (10 лет назад)

Комментарий удален

Ответить

Другие вопросы из категории

5 номер там десятичные числа
Помогите решить в C++

Дана последовательность из n целых чисел. Найти количество элементов этой последовательности, кратных числу К.

Удвоить трѐхзначное число, введенное с клавиатуры, если оно содержит в своей записи хотя бы одну единицу, и возвести в квадрат в другом случае.

Если введѐнное число не трѐхзначное, вывести сообщение об ошибке.(В ПАСКАЛЕ)

Читайте также

Дана

целочисленная прямоугольная матрица. Определить количество столбцов, содержащих
хотя бы один нулевой элемент.

Примечание: Размеры
массивов задаются именованными константами. Значения элементов массивов
вводятся с клавиатуры, генерируются случайным образом или инициализируются в
программе (значения по умолчанию). Способ задания элементов массива выбирается
пользователем. Все операции над массивами выполняются отдельными функциями.

Помогите плиззз на Pasca ABC

с клавиатуры вводят слово.Составить программу ,которая: а)определяет количество символов в нём б)проверяет,не совпадают ли первая и

последняя буквы слова

в)выводт на экран первый,второй и последний символы

г)определяет,чётно или нечётно количество символов в нём



Вы находитесь на странице вопроса "в исходной строке а определить количество слов содержащих ровно п символов строки х.", категории "информатика". Данный вопрос относится к разделу "10-11" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.