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

Считать текст из файла и вывести сначала вопросительные, а затем восклицательные предложения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Мумба-Юмба http://www.cyberforum.ru/cpp-beginners/thread401414.html
Имя входного файла: f.in Имя выходного файла: f.out Максимальное время работы на одном тесте: 1 секунда Максимальный объем используемой памяти: 64 мегабайта Слова в языке Мумба-Юмба могут состоять только из букв a, b, c, и при этом: • никогда не содержат двух букв b подряд, • ни в одном слове никогда не встречается три одинаковых подслова подряд. Например, по этому правилу в язык...
C++ подскажите решение задачи представить программу позволяющую для заданного целого короткого числа выполнить 1)перестановку младшей и старшей триады 2) перестановку младшей и старшей тетрады 3) перестановку младшей и старшей триады старшего байта 4) перестановку младшей и старшей тетрады старшего байта 5)перестановку младшей и старшей триады младшего байта 6)перестановку младшей и старшей тетрады младшего байта http://www.cyberforum.ru/cpp-beginners/thread401401.html
C++ вычислить процент
Программа, которая обрабатывает результаты экзамена Допусти ввожу кол-во студентов-10 Пятерок получили-6 чел Четверок-3 Троек-1 Двоек-0 и из этого Для каждой оценки программа должна вычислить процент от общего количества оценок. Программа должна проверить, чтобы количество оценок совпадало с количеством студентов.
C++ Нужен человек для решение задачи с++
Нужна обязательно быть завтра 08.12.2011 06.00-09.00 онлайн Московскому времени Задачи будут по тематикам struct, pointers, istream library, string, задачи будут легкие для 1 -го курса..... Одна задача -50-150 рублей в зависимости от сложности.... Оплата: webmoney Нужно решить задачу за 20-30 минут)
C++ помогите ришить задачу http://www.cyberforum.ru/cpp-beginners/thread401390.html
Предоставить программу позволяющую для заданного короткого целого числа выполнить: 1)перестановку младшей и старшей триады 2) перестановку младшей и старшей тетрады 3) перестановку младшей и старшей триады старшего байта 4) перестановку младшей и старшей тетрады младшего байта 5) перестановку младшей и старшей тетрады старшего байта 6) перестановку младшей и старшей триады младшего байта
C++ Подскажите пожалуйста, где ошибка? Всем доброго времени суток, программа по строкам, нужно найти и вывести на экран слово с максимальной длинной, слова разделены пробелами в строке. Вот написал программку, запоминаю начало и конец слова, потом считаю, насколько оно длинное, сравниваю с максимумом, если оно длиннее, то оставляю индексы начала и конца, потом от начала до конца слова вывожу строку. Подскажите пожалуйста, где ошибка,... подробнее

Показать сообщение отдельно
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
08.12.2011, 18:11  [ТС]     Считать текст из файла и вывести сначала вопросительные, а затем восклицательные предложения
PointsEqual, =)Страшно-это точно))
Вот зацените код) после долгих мучений!
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
#include <conio.h>
#include <stdio.h>
#include <iostream>
#include <string> 
using namespace std;
int main(void)
{  char ch[2]; FILE * f;
  f = fopen("D:\\text2.txt","r");
  if (f != NULL)
     { 
 
// определяем длину файла
 
    fseek(f,0,SEEK_END); long len = ftell(f);
 
// выделяем буфер необходимого размера
 
    char *buf=new char[len+1];
 
// смещаем указатель на начало файла и
// считываем файл в буфер
 
    fseek(f,0,SEEK_SET);
    fread(buf, len,1, f); buf[len]='\0';
 // выделение предложений из текста
  long n = 0; // позиция начала предложения
  long i = 0, j = 0, kol = 0;
  while(buf[i])
   { if (buf[i] == '?')
      { //вывод символов вопросительного предложения
        for(j=n; j<=i;j++)
        { ch[0] = buf[j]; ch[1]='\0';
         cout <<(ch);
         }
         n = i+1;
      }
      // выделение предложений из текста
  long n = 0; // позиция начала предложения
  long i = 0, j = 0, kol = 0;
  while(buf[i])
   { if (buf[i] == '!')
      { //вывод символов вопросительного предложения
        for(j=n; j<=i;j++)
        { ch[0] = buf[j]; ch[1]='\0';
         cout <<(ch);
         }
         n = i+1;
      }
     if (buf[i]=='.') n = i+1;
    i++;
   }
 system("pause"); 
 fclose(f); 
  } 
 }
}
 
Текущее время: 23:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru