Форум программистов, компьютерный форум CyberForum.ru

Поиск повторяющихся слов в тексте (доработка кода) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Объясните, как работает программа http://www.cyberforum.ru/cpp-beginners/thread415819.html
программа по трем введеным числам определяет и выводит на экран число имеющее в составе наибольше едениц. Пожалуйста, объясните подробно какие действия происходят в цикле, в книге написано, что удаляет последнюю цифру из числа, увеличивает счетчик... но я не понял как это делается, сам смысл действий... #include <iostream> #include <conio.h> using namespace std; void main() { ...
C++ максимальный элемент массива В массиве x найти максимальный элемент http://www.cyberforum.ru/cpp-beginners/thread415803.html
Реализовать функцию копирования элементов первого массива во второй в обратном порядке. C++
1. Создать проект, который содержит консольную программу Win32. 2. Создать два массива на N элементов, размер первого определить неявно (путем инициализации определенным количеством элементов). Реализовать функцию копирования элементов первого массива во второй в обратном порядке. Реализовать функции, которые будут выполнить операции над массивами (Определить сумму элементов расположенных...
C++ исправьте программу, добавив функцию
Написал программу, работает. Но нужно переделать с функцией, не могу осилить. #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<iomanip> #include<iostream> #include<math.h> #define m 6 //Количество строк #define n 6 //Количество столбцов int main() {
C++ создание класса http://www.cyberforum.ru/cpp-beginners/thread415787.html
Создать класс для работы с матрицей. Данные класса: матрица A(3×3). Открытые функции класса: транспонирование матрицы. Перегрузить операции «>>», «<<» для ввода и вывода матрицы. Перегрузить операции «++» и «--» увеличения или уменьшения каждого элемента матрицы на 1.
C++ Даны две строки, содержащие не более 100 символо 6. Даны две строки, содержащие не более 100 символов. Строки состоят из слов, разделенных пробелами. Распечатать строку, которая содержит заданное слово заданное количество раз. Вот код моей программы: #include <iostream> #include <conio.h> #include <string.h> #include <stdio.h> #include <windows.h> using namespace std; int main() { подробнее

Показать сообщение отдельно
ПаЗитиФкА
3 / 3 / 0
Регистрация: 16.11.2011
Сообщений: 51
23.12.2011, 20:57     Поиск повторяющихся слов в тексте (доработка кода)
Дан текст, содержащий n строк. Для каждого слова указать, сколько раз оно встречается в тексте.
Я тут кое-что попробовала сделать (с++), идей дальше нет. Кому не сложно, помогите пожалуйста!
C++
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
intchar ...
void main
{ 
  printf (“vvedite col strok in text”);
  gets (s);
  n=atoi(s);
  printf (“vvedite text: \n”);
  for (i=0; i<n; i++) gets (txt[i]);
  for (i=0; i<n; i++)  strcpy (st, txt[i]);  // превращение текста в одну строчку
  p=strlen(st);
  for ( i=0;i<p; i++)
  if (st[i]=='.' || st[i]==',' || st[i]=='?' || st[i]=='!') st[i]=' ';   //очистка от знаков препинания
  do
 { k=strchr(st,  ' ');   // поиск пробела
  if (k!=NULL) k1=k-st;
  for (i=0; i<k1; i++)  {st4[i]=st[i];    \\ выделение слова
                                  g++;
                                 }
  for (i=k1+1; i<p; i++)  {st1[i]=st[i];   \\ отделение остальной части
                                      s++;
                                     }
  do
  z=strlen(st4);
  L=strstr(st, st4);
  if (L= =NULL) { for (i=0; i<z; i++) puts(st4[i]);   \\ если слово больше не встретилось выводит слово и кол
                           printf(%d”, g);
                           zm++;
                         }
   else
  { L1=L-st;
    L2=L+z-2;
    g++;
    for (i=L2+1; i<p; i++) { st1[s]=st[i];           \\  отбрасывает часть содержащую повтор
                                        s++;
                                      }
    for (i=L2+1; i<p; i++) st[i]=st1[i];
}
while (L!=NULL);
delete [] st;
delete [] st1;
delete [] st4;
g=0;
   }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru