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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Очистка Text у ComboBox http://www.cyberforum.ru/cpp-beginners/thread148801.html
Здравствуйте. Подскажите пожалуйста: есть программа, в нее заносятся данные, заносятся через компоненты Edit и ComboBox. После нажатия кнопки сохранить, мне нужно чтобы свойство Captions у компонента Edit и свойство Text у компонента ComboBox очищались. С Edit я разобрался, а вот с ComboBox не получается. void __fastcall TForm1::Button1Click(TObject *Sender) { ComboBox1->Text->Clear(); ...
C++ Тип информационного поля double. Добавить в список элемент после элемента с заданным информационным полем ЗАВТРА СДАТЬ НА ЗАЧЕТ НЕ УСПЕВАЮ ПОМОГИТЕ ПОЖАЛУЙСТА! (( 1)Тип информационного поля double. Добавить в список элемент после элемента с заданным информационным полем. 2)Тип информационного поля char*. Найти количество листьев в дереве. Добавлено через 1 час 1 минуту Ну пожалуйста помогите! Оч надо http://www.cyberforum.ru/cpp-beginners/thread148800.html
C++ Нужно построить график как можно проще
надо построить площадь интеграла от 1до5 подинтегральное выражение- c=(log10(x))/(sqrt(x+1))
C++ Работа с файлами
Дан файл File_in.dat, содержащий 65536 целых чисел. Считать 20 значения файла начиная с 30-го в одномерный массив и найти медиану массива. Результат записать в файл File_out.dat.
C++ Напечатать все слова четной длины http://www.cyberforum.ru/cpp-beginners/thread148793.html
Дан текст. Напечатать все слова четной длины. Дублирование тем запрещено правилами форума (п. 3.4). Не плодите одинаковых тем.
C++ Указатели и строки Здравствуйте! Помогите решить такую задачу Найти в строке последовательности , состоящие из одного повтопяющегося символа, и заменить его на число символов и один символ, например мммммм - 5м Реализовал вот так: #include <stdio.h> #include <stdlib.h> #include <windows.h> void Simvol(char *c) { подробнее

Показать сообщение отдельно
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
25.06.2010, 00:57     Считать из текстового файла три предложения и вывести их в обратном порядке
Можно попробовать создать класс "предложение", перегрузить операторы ввода и вывода.
Далее создать вектор предложение и три раза прочитать, потом вывести с конца ветора. Если в стиле Си то логичнее (ИМХО) опять же создать структуру "предложение", потом массив структур. В общем такая идея.

C++
1
2
3
4
5
6
7
8
class Sentence
{
public:
   friend std::ostream& operator << (std::ostream &os, const Sentence &w);
   friend std::istream& operator >> (std::istream &is, Sentence &w);
private:
   std::string str;
};
при этом реализация оператора вывода будет совсем тривиальной
C++
1
2
3
4
5
   friend std::ostream& operator << (std::ostream &os, const Sentence &w)
   {
      os << w.str;
      return os;
   }
а оператора ввода чуть посуровее... как еще точно не знаю, но если примерно:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
   friend std::istream& operator >> (std::istream &is, Sentence &w)
   {
      char ch = 0;
      
      is >> ch;
      while(ch != '.') {
         w.str += ch;
         is >> ch;
      }
      w.str += '.';
 
      return is;
   }
а собственно решение совсем тривиально уже:
C++
1
2
3
4
5
6
7
8
9
   std::vector<Sentence> v(3);
   std::ifstream ifs("in.txt");
 
   for(int i = 0; i < 3; ++i)
      ifs >> v[i];
 
   for(int i = 2; i >= 0; --i)
      std::cout << v[i];
   std::cout << std::endl;
Добавлено через 2 минуты
а просто так символ "." в поток выводить не есть решение на мой взгляд. все таки надо с объектами работать, а не с выводом на экран.

Добавлено через 4 минуты
кстати о птичках, то есть о getline, вот так вот надо бы наверное
C++
1
2
3
4
5
6
   friend std::istream& operator >> (std::istream &is, Sentence &w)
   {
      std::getline(is, w.str, '.');
      w.str += '.';
      return is;
   }
 
Текущее время: 04:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru