Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2015, 17:45   #1
CEH9
Новичок
Джуниор
 
Регистрация: 26.05.2015
Сообщений: 1
По умолчанию Не работает алгоритм нахождения слов

Код:
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
#include <iterator>
using namespace std;
int Function(int *);
int main()
{
    setlocale(LC_CTYPE, "rus");
    fstream File;
    const char* clause;
    char a;
    int amount = 0, g = 0, z = 0, vowel = 0, v, n, m = 1, x = -1 ;
    File.open("C:\\Новая папка\\Файл.txt", ios::in);
    string str((istreambuf_iterator<char>(File)), istreambuf_iterator<char>());
    cout << str;
    cout << "\n";
    clause = str.c_str();
    File.close();
    for (int i = 0; i < strlen(clause); i++)
    {
        if (clause[i] != '\n')
        {
            amount++;
        }
        else
        {
            g++;
        }
    }
    g++;
    for (int i = 0; i < strlen(clause); i++)
    {
        if ((clause[i] == '.') || (clause[i] == '!') || (clause[i] == '?') || (clause[i] == ' ') || (clause[i] == ':') || (clause[i] == ';') || (clause[i] == '-') || (clause[i] == '_') || (clause[i] == '(') || (clause[i] == ')') || (clause[i] == '[') || (clause[i] == ']') || (clause[i] == '{') || (clause[i] == '}') || (clause[i] == ',') || (clause[i] == '`'))
        {
            z++;
        }
    }
    for (int i = 0; i < strlen(clause); i++)
    {
        if ((clause[i] == 'А') || (clause[i] == 'а') || (clause[i] == 'Я') || (clause[i] == 'я') || (clause[i] == 'О') || (clause[i] == 'о') || (clause[i] == 'Е') || (clause[i] == 'е') || (clause[i] == 'Ё') || (clause[i] == 'ё') || (clause[i] == 'У') || (clause[i] == 'у') || (clause[i] == 'Ю') || (clause[i] == 'ю') || (clause[i] == 'Ы') || (clause[i] == 'ы') || (clause[i] == 'И') || (clause[i] == 'и') || (clause[i] == 'Э') || (clause[i] == 'э'))
        {
            vowel++;
        }
    }
    cout << "Количество букв в файле: " << amount - z << "\n" << "Средини них " << vowel << " гласных" << "\n" << "Знаков препинания: " << z << "\n" << "Количество строк в файле: " << g << "\n";
    cout << "Хотите найти слово в тексте?" << endl;
    cout << "1. Да" << "\n" << "2. Нет" << endl;
    cin >> v;
    switch (v)
    {
    case 1:
        cout << "Введите слово, которое нужно найти" << endl;
        char word[255];
        cin >> word;
        n = strlen(word);
        File.open("C:\\Новая папка\\Файл.txt", ios::in);
        char saver[1000];
        while (!File.eof())
        {
            File >> saver;
            cout << saver;
            x++;
        }
        char * TI;
        TI = strstr(saver, word);
        if (TI == NULL)
        {
            cout << "Такого слова нет" << endl;
        }
        else
        {
            cout << "Такое слово есть" << endl;
        }
        break;
    case 2:
        cout << "Работа программы закончена, закройте окно" << endl;
        break;
    }
    system("pause");
    return 0;
}
CEH9 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
алгоритм нахождения fist001 C++ Builder 2 28.05.2011 21:30
алгоритм нахождения пути blacktener Общие вопросы C/C++ 3 03.04.2011 20:09
Определить процедуру нахождения количества слов qwertytol Помощь студентам 2 08.12.2009 22:29
КАК составить программу для нахождения самых длинных слов из текста DJONIK93 Общие вопросы C/C++ 5 28.10.2009 21:34
Macros для нахождения и удаления слов конгер Microsoft Office Word 1 13.10.2009 18:14