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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
#1

Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз - C++

21.12.2012, 09:19. Просмотров 1253. Ответов 6
Метки нет (Все метки)

Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2012, 09:19     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
Посмотрите здесь:

Дана строка, содержащая текст на русском языке и некоторые 2 слова. Определить, сколько раз они входят непосредственно друг с другом. C++
C++ Дана строка. Определить, сколько раз в нее входит группа abc
Дана строка содержащая английский текст. Найти количество слов, начинающихся с буквы b C++
Дана строка. Определить, сколько раз входит в нее группа букв abc C++
Дана строка, содержащая текст на русском языке C++
Дана строка, содержащая текст. Вывести все слова, повторяющиеся более трех раз. C++
C++ Дана строка, содержащая текст. Найти длину самого короткого слова.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex-net
3 / 3 / 1
Регистрация: 27.11.2012
Сообщений: 171
24.12.2012, 21:58  [ТС]     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #2
Помогите, вообще не секу в С++
Croessmah
Модератор
Эксперт CЭксперт С++
 Аватар для Croessmah
12501 / 7063 / 793
Регистрация: 27.09.2012
Сообщений: 17,447
Записей в блоге: 2
Завершенные тесты: 1
24.12.2012, 23:17     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #3
Как вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <cstring>
int main(){
    char str[]="My name is Space, name name";
    int WordCount=0;
    char *p=str;
    while(p=std::strstr(p,"name")){
        ++WordCount;
        ++p;
    }
    std::cout<<WordCount;
    std::cin.get();
    return 0;
}
svkpro
 Аватар для svkpro
8 / 8 / 0
Регистрация: 07.12.2012
Сообщений: 143
24.12.2012, 23:53     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #4
функция strstr() находит совпадения т. е. она найдет слово "ток" в слове "цветок" я предлагаю разбить на подстроки и сравнивать. вот мой код нахождения слова в тексте:
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
using namespace std;
 
 
int main()
{
    locale::global(locale(""));
    system("chcp 1251");
    system("cls");
    const int len =81;
    char word[len], line[len];
    char divider[]=",. !?";
    cout<<"Введите слово для поиска: ";
    cin>>word;
    ifstream fin("text.txt");
    if(!fin){cout<<"файл не найден!\nубедитесь что файл существует и запустите программу еще раз!\n";
                goto gt;}
    int count=0;
    char *ptr;
    while(fin.getline(line,len)){
        ptr=strtok(line,divider);//читаем до разделителя
        while(ptr !=NULL){
            if(!strcmp(ptr,word))count++;//сравниваем введенное слово с полученым
            ptr=strtok(NULL,divider);
            }      
        }
    fin.close();
    if(count>0){cout<<"слово встречается "<<count<<"-ды\n";}
    else {cout<<"строки с таким словом отсутствуют\n";}
    gt:
    system("pause");
    return 0;
}
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6209 / 3454 / 423
Регистрация: 29.11.2010
Сообщений: 9,163
25.12.2012, 00:12     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <sstream>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::string text = "Eniki beniki eli beniki benki vareniki", word = "beniki";
    std::istringstream ist(text);
    std::cout << std::count(std::istream_iterator<std::string>(ist),
        std::istream_iterator<std::string>(), word) << std::endl;
}
dkg_C
8 / 8 / 1
Регистрация: 17.09.2012
Сообщений: 144
25.12.2012, 00:47     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #6
UP:
А для реализации на C есть что-то подобное?
Когда мы вводим слово и его надо потом найти в файле.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2012, 02:51     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
Еще ссылки по теме:

Дана строка, содержащая англ. текст C++
Задан текст. Определить, входит ли в него заданное слово и сколько раз. C++
Дана строка, содержащая текст. Найти слова, в которых буквы расположены по алфавиту C++
C++ Дана строка, определить сколько раз входит в нее группа abc
Выяснить, сколько раз в данную последовательность входит группа подряд идущих символов, образующих слово C++

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

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6209 / 3454 / 423
Регистрация: 29.11.2010
Сообщений: 9,163
25.12.2012, 02:51     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз #7
dkg_C,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <fstream>
#include <sstream>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::string word;
    std::cin >> word;
    std::ifstream ifs("text.txt");
    if (!ifs) return 1;
    std::cout << std::count(std::istream_iterator<std::string>(ifs),
        std::istream_iterator<std::string>(), word) << std::endl;
}
Yandex
Объявления
25.12.2012, 02:51     Дана строка содержащая текст. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
Ответ Создать тему
Опции темы

Текущее время: 21:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru