Поиск Слов Из Текста.

Тема в разделе "C/C++/C#", создана пользователем Faul, 9 апр 2012.

  1. Faul

    Faul Гость

    Помогите пожалуйста с программой. Нужно написать программу, которая считывает текст из файла и выводит на экран только предложения, состоящие из заданного количества слов. Файл открывается через: ifstream fin("text.txt, ios::in).
    Заранее большое спасибо.
     
  2. Whatka

    Whatka Well-Known Member

    Регистрация:
    9 окт 2011
    Сообщения:
    433
    Симпатии:
    4
    Вы так любезны.Указали даже способ открытия файла(причём с ошибкой).
    Но смею вас огорчить любезнейший.

    На сием форуме помощь оказывается исключительно на платной основе
    или господам соизволившим предоставить свой собственный код,работой
    коего они не вполной мере удовлетворены.
     
  3. Faul

    Faul Гость

    Да, что-то накасячил с кодом.
    Вот написал программу, которая осуществляет поиск слова из файла и анализ символов. Но вот как сделать поиск для определенного кол-ва слов.. никак не могу сообразить.

    Код (C++):
    #include "stdafx.h"
    #include <fstream>
    #include <iostream>
    using namespace std;


    int _tmain(int argc, _TCHAR* argv[])
    {

    const int len=81;
    char word[len], line[len];
    cout <<"Vvedite clovo dla poiska "; cin >>word;
    int l_word=strlen(word);
    ifstream fin("text.txt", ios :: in );
    if (!fin) {cout <<"Don't worry!!!!"<<endl; return 1;}
    int count = 0;
    while (fin.getline(line,len)){
    char *p=line;
    while (p=strstr(p,word)){
    char *c=p;             
    p+=l_word;
    if (c!=line)
    if (!ispunct(*(c-1)) && !isspace(*(c-1))) continue;
    if (!ispunct(*p) || !isspace(*p) || (*p == '\0')) count++;
    }
    cout <<"Kolichestvo vhogdenui slova "<<count<<endl;
    }



    return 0;
    }
     
  4. rrrFer

    rrrFer Well-Known Member
    Команда форума C\C++ Team

    Регистрация:
    6 сен 2011
    Сообщения:
    1.324
    Симпатии:
    36
    Считываешь предложение, Наверное со 1 слову, последнее слово предложение заканчивается точкой.
    Считывать слова можно как то так(не обязательно делать это по 1 символу{как в вашем примере}):
    Код (Text):
    std ::string str;
    std ::ifstream ifst;
    ifst .open("fname");
    ifst >>str;
    при этом не забываешь считать количество слов.
     
Загрузка...

Поделиться этой страницей