С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
AtomicBear
0 / 0 / 0
Регистрация: 10.11.2015
Сообщений: 3
1

Найти в тексте все слова, которые содержат хотя бы один фрагмент заданного вида

10.11.2015, 11:51. Просмотров 326. Ответов 1

Сама задача: Найти в тексте все слова, которые содержат хотя бы один фрагмент заданного вида. Подсчитать их количество и выделить в исходном тексте другим цветом как слова, так содержащиеся в них фрагменты.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
uses crt;
 
function find(t,f:string):integer;
var i,n,k:integer;
begin 
 for i:=1 to length(t) do 
  for n:=1 to length(f) do
  begin
   if t[i] = f[n] then k:=k+1;
  end;
 find:=k div length(f);
end;
 
var s,d:string;
begin
readln(s);
readln(d);
writeln(find(s,d));
end.
Эта программа находит кол-во фрагментов. Как ее дополнить, чтобы она выводила текст с покрашенными фрагментами? Заранее, спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2015, 11:51
Ответы с готовыми решениями:

Удалить слова, которые содержат все буквы заданного слова, и продублировать остальные слова
Разделитель — один из символов « ,.;:!?"'» (начиная с пробела и заканчивая...

Вывести все слова, которые содержат хотя бы одну букву е
Вывести все слова, которые содержат хотя бы одну букву е

Найти в строке те слова, которые содержат хотя бы одну букву k
дана строка.найти в ней те слова,которые содержат хотя бы одну букву k

Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент
Дана целочисленная матрица размерности (nxn ). 2. Найти сумму элементов в тех...

Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент
1) Для заданно матрицы размером 8 на 8 найти такие к, что к-я строка матрицы...

1
Puporev
Модератор
55495 / 42589 / 29436
Регистрация: 18.05.2008
Сообщений: 100,744
10.11.2015, 13:40 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
uses crt;
const rz=[' ','.',',','-','?','!'];{символы, разделители слов, можно добавить}
var s,f,s1:string;
    a:array[byte] of byte;{массив цветов букв}
    n,i,j,k,p,q:byte;
begin
clrscr;
writeln('Введите текст');
readln(s);
writeln('Введите фрагмент');
readln(f);
n:=length(s);
for i:=1 to n do
a[i]:=7; {установим цвет символов строки}
i:=1;{начнем со 2 символа}
while i<=n do {пока не конец}
if not(s[i] in rz)and ((i=1)or(s[i-1] in rz)) then{если не разделитель
                                и это первый символ или перед ним разделитель,
                                то начало слова}
 begin
  k:=i;
  s1:='';{составим очередное слово}
  while (k<=n) and not(s[k] in rz) do {пока не разделитель и не конец строки}
   begin
    s1:=s1+s[k];
    k:=k+1;
   end;
  if pos(f,s1)>0 then {если в слове есть фрагмент}
   begin
    q:=q+1;{считаем его}
    j:=i; {начинаем менять цвет букв}
    repeat
    if copy(s,j,length(f))=f then {во фрагментах}
     begin
      for p:=j to j+length(f)-1 do a[p]:=13;
      j:=j+length(f);
     end
    else  {в остальных буквах}
     begin
      a[j]:=12;
      j:=j+1;
     end;
    until j>i+length(s1);
   end;
  i:=i+length(s1);
 end
else i:=i+1;{пропускаем разделители}
if q=0 then write('Нет слов содержащих фрагменты ',f)
else {выведем раскрашеную строку}
for i:=1 to length(s) do
 begin
  textcolor(a[i]);
  write(s[i]);
 end;
readln
end.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2015, 13:40

Найти сумму элементов в тех строках матрицы, которые содержат хотя бы один отрицательный элемент
Для заданной матрицы найти такие k , что k -я строка матрицы совпадает с k -м...

Найти сумму элментов в тех строках матрицы, которые содержат хотя бы один отрицательный элемент
Для заданной матрицы размером 8*8 найти такое к, что к-я строка матрицы...

Найти сумму элементов в тех столбцах матрицы, которые содержат хотя бы один отрицательный элемент
Доброго времени суток!Помогите пешить несколько задачек.Сам как то вообще не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru