Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
6 / 6 / 0
Регистрация: 27.10.2014
Сообщений: 120
1

Считать текст из файла и вывести на экран только предложения, начинающиеся с тире

10.04.2015, 12:30. Показов 458. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать программу, которая считывает текст из файла и выводит на экран толь¬ко предложения, начинающиеся с тире.

Нужно написать программу по аналогии с этой:
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
#include <fstream.h>
#include <iostream.h>
#include <string.h>
#include <conio.h>
int main() {
ifstream fin;
fin.open( "Text.txt" );            //Открытие файла
 if ( fin.fail() ) {               //проверка на ошибку при открытие файла
    cout << "Oshibka otkritia fila." ;
    getch();
    return 1;
}
fin.seekg(0,  ios::end);                  //установили указатель на конец файла
long len = fin.tellg();                    //считали количество строк в файле в переменную len
char *buf = new char [len + 1];  //создали массив buf длиной len+1
fin.seekg(0,  ios::beg);                 //установили указатель на начало файла
fin.read(buf, len);                       //считали все строки последовательно в массив buf
buf[len] = '\0';                           //в последний элемент поставили указатель на конец
long n = 0,  i = 0,  j = 0;          
        /* в переменной n запоминаем номер символа, с которого начинается предложение
        переменная j служит для передвижения в пределах одного предложения
        переменная i служит для передвижения по массиву */
while(buf[i]) {                            //пока не дошли до конца массива
  if( buf[i] == '?') {                   /* проверяем, не является ли очередной символ массива
          вопросом. Если это так, то предложение находится с символа n до символа i */
   for ( j = n;  j <= i; j++) cout << buf[j];                //выводим это предложение
   n = i  + 1;                              //меняем переменную n на новое значение
  }                                             // (т.е. следующее предложение начинается с символе i+1)
if ( buf[i] ==  '.'  || buf[i] =='!') n = i + 1;  /*если встретилась точка или восклицательный
               знак, значит это было не вопросительное предложение и мы просто
               меняем значение переменной n на новое значение */
i++;                                       //переходим на следующий символ
}
fin.close();                             //закрываем файл
getch();
}
Попробовал просто поменять символы в этом фрагменте:
C++
1
if ( buf[i] ==  '.'  || buf[i] =='!') n = i + 1;
Не получилось

Заранее спасибо за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.04.2015, 12:30
Ответы с готовыми решениями:

Считать текст из файла и вывести на экран только предложения начинающиеся с тире
Дан преподавателем код программы для самостоятельного разбора. Помогите понять какая ошибка в 44...

Считать текст из файла и вывести на экран только предложения, начинающиеся с тире
Помогите пожалуйста, не знаком с работой с файлами в плюсах и не силен в работе со строками. Нужно...

Считать текст из файла и вывести на экран только предложения, начинающиеся с введенного с клавиатуры слова
Доброго времени суток! Помогите, пожалуйста, дописать код. Вот задание: Написать программу,...

Cчитать текст из файла и вывести на экран предложения, начинающиеся с тире
Помогите!!!!!!!! Жизненно важно!!!! НЕОБХОДИМА программа которая считывает текст из файла и...

0
10.04.2015, 12:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2015, 12:30
Помогаю со студенческими работами здесь

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

Считать текст из файла и вывести на экран только предложения, не содержащие запятых
Здравствуйте. Прошу помощи в написание программу на C++ &quot;Написать программу, которая считывает...

Считать текст из файла и вывести на экран только предложения не содержащие запятых
написать программу которая считывает текст из файла и выводит на экран только предложения не...

Считать текст из файла и вывести на экран только предложения, не содержащие запятых
Помогите пожалуйста доделать программу) Собственно, она считывает текст из файла и выводит на...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru