Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
1

Определить количество повествовательных предложений в тексте

13.03.2015, 17:37. Просмотров 1213. Ответов 8
Метки нет (Все метки)

Определить количество повествовательных предложений в тексте; по нажатию произвольной клавиши выделить цветом третье повествовательное предложение. Помогите пожалуйста. Идеи есть, но реализовать не могу
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2015, 17:37
Ответы с готовыми решениями:

Определить количество повествовательных предложений
Определить количество повествовательных предложений в строке(с++)????

Определить количество предложений в тексте
Добрый день! Я не могу понять в чём дело. Программа должна выводить сколько предложений в тексте, и...

Определить количество предложений в тексте
с помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000...

Определить количество предложений в тексте
Помогите написать программу на Visual C++ 6, условие такое: Написать программу, которая определяет...

8
1339 / 982 / 309
Регистрация: 28.07.2012
Сообщений: 2,736
13.03.2015, 18:03 2
Цитата Сообщение от Geniis Посмотреть сообщение
Идеи есть
Так в студию их!
0
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
14.03.2015, 15:20  [ТС] 3
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
48
49
50
51
52
53
54
55
56
57
58
#include <stdlib.h>
#include <iostream>
#include <stdio.h>
#include <cstring>   
#include <windows.h>
#include <fstream> 
 
using namespace std;
int main()
{
    FILE *file;
    char s[1000];
    int k = 0, str;
    file = fopen("G:\\1 (2).txt", "r");
    
    if (file != NULL)
    {
        while (!feof(file))
        {
            fgets(s, 2, file);
            
            for (int i = 0; i < strlen(s); i++)  // подсчёт предложений
            {
                if (s[i] == '.')
                {
                    k++;
                }
            }
            printf("%s", s);
        }
    }
  {
    setlocale(0, "");
 
    ifstream in("G:\\1 (2).txt"); // открыли файл для чтения
    
    string str;
    for (int i = 1; i < 3; i++) // пропускаем n - 1 строки
         in.ignore(255, '\n');
    
    if (!in.eof()) // если не конец файла
    { 
        getline(in, str); // считали нужную строку
               {
                 HANDLE hOUTPUT = GetStdHandle(STD_OUTPUT_HANDLE);
                 SetConsoleTextAttribute(hOUTPUT,FOREGROUND_GREEN | FOREGROUND_INTENSITY);
                cout<<str<<endl;
                 return 0;
                }
    }
  }
    
 
    fclose(file);
    cout << "\n Koli4estvo predlozhenii: " << k << endl;
    system("pause");
    return 0;
}

В общем программа должна красить прямо при выводе предложений. Также не считает количество предложений.
В файле записано примерно так "vdfsf.dsfsdfsd.fefrbfd.vdssgrgt.btdbrevefw." так вот, fefrbfd надо закрасить цветом и чтобы при выводе на консоль было так. vdfsf.dsfsdfsd.fefrbfd.vdssgrgt.btdbrevefw. А количество повествовательных предложений отказывается считать. Help

Добавлено через 20 часов 47 минут
Идею огласил
0
1339 / 982 / 309
Регистрация: 28.07.2012
Сообщений: 2,736
14.03.2015, 15:45 4
Цитата Сообщение от Geniis Посмотреть сообщение
Идею огласил
1. Непонятно что такое "повествовательное" предложение. Просто нечто с точкой?
2. В файле могут быть и не только "повествовательные" предложения.
3. Согласно (2) не обязательно, что третье "повествоватльное" предложение будет на третьей строчке в файле.
4.
Цитата Сообщение от Geniis Посмотреть сообщение
В файле записано примерно так "vdfsf.dsfsdfsd.fefrbfd.vdssgrgt.btdbrevefw."
Из этого следует, что предложения не обязаны разделяться между собой переводом строки, так что пропуск предложений в строках 38-39 сделан неверно. У тебя предложения заканчиваются некоторыми знаками препинания, а не переводами строки.

Я бы на твоем месте объединил обе части программы: посчет кол-ва предложений и покраска третьего повествовательного.
Первым шагом пробегаешь по всему файлу, считываешь из него посимвольно в некоторый буфер, пока не считаешь все предложение. Затем определяешь тип предложения по конечному знаку препинания. Параллельно ведешь счетчик повествовательных предложений. Третье повествовательное предложение выводшь другим цветом, не забывая после этого поменять цвет текста обратно.
0
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
14.03.2015, 16:11  [ТС] 5
Я то это знал. Я реализовать не могу) что то мной упущено...
0
33 / 43 / 9
Регистрация: 14.03.2015
Сообщений: 134
14.03.2015, 16:17 6
ты в какой среде пишиш?
0
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
14.03.2015, 16:43  [ТС] 7
Super__Enot, Dev C++ вообще
0
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
16.03.2015, 15:13  [ТС] 8
апа
0
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 44
22.03.2015, 03:52  [ТС] 9
поднял. Помогите с кодом
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2015, 03:52

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Определить количество предложений в тексте
Помогите,пожалуйста,я не могу понять как написать фрагмент программы &quot;Дан текст, определить,...

Определить количество предложений в тексте
Нужно определить количество предложений в тексте, учитывая то, что пользователь неадекватный и...

Как определить количество предложений в тексте?
Ребят как определяет количество предложений в тексте??? с помощью текстового редактора создать...

Слова на букву "А" в тексте переписать в обратном порядке, определить количество предложений в тексте
Как решить задачу на с++? В тексте все слова, начинающиеся на букву 'A', переписать в обратном...


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

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

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