«Феофанія» - парк-пам'ятник садово-паркового мистецтва та садово-парковий комплекс розташований на території Голосіївського району, який створено в 1972 році.
Заповідник розташований в південній частині Голосіївського району. Головною прикрасою парку вважають ланцюжок із п’яти озер, їх називають палладінські озера. На території «Феофанії» розташований гідрологічний пам'ятник природи місцевого значення та два водних джерела, багато дерев, кущів та ліан. Зберіглося багато дерев віком від 100 до 300 років і більше. У парку були зареєстровані 9 червонокнижних видів комах.
Парк «Кіото»
Парк був заснований у 1972 році , він знаходиться на Лісовому масиві. Всі деталі та символіка були запозичені із паркової культури Японії.
В центрі «Кіото» розташований сад каменів. З рослин можна побачити вікові сосни, японський клен. У вересні 2011 році була висаджена алея сакур. Дерева висаджені в два ряди вздовж пішохідних доріжок з внутрішньої сторони. В парку є дзен-сад — гравієвий сад в японському стилі з сухим озером, посеред якого стоять два камені, з'єднані містком. Поряд знаходиться альтанка та водоспад і сухий струмок. В озері живуть червоні рибки.
Итак, целевой язык - C++. Это значит мы - радостные обладатели технологии потоков, с коей мы будем производить весь ввод/вывод как при работе с файлами, так и при работе со стандартным вводом/выводом (консолью).
Ну а раз уж мы работаем с потоками, то будем делать это красивенько: создадим класс-обёртку для потока ввода, цель которого - поиск в этом потоке цитат и отправка их на поток вывода (который мы передаём).
[!] Стоит отметить, что по заданию не сказано, что есть разница между ' и ". Поэтому будем считать их одинаковыми.
[!] Внимание! Рядом с исполняемым файлом надо создать текстовый файл data.txt c текстом и цитатами.
Код
С++11
#include <iostream>#include <fstream>using std::cout;class QuotesFinder { std::istream &in_stream; bool is_it_in_quote = false;public: QuotesFinder() = delete; QuotesFinder(QuotesFinder&&) = default; QuotesFinder(QuotesFinder const&) = default; explicit QuotesFinder(std::istream &is) : in_stream(is) {} [[nodiscard]] bool eof() const { return in_stream.eof(); } // Вот тут происходит вся магия QuotesFinder& operator >> (std::ostream& out_stream) { char buffer; in_stream.get(buffer); //Получаем очередной символ из потока if (buffer == '\"' || buffer == '\'') { if (is_it_in_quote) { is_it_in_quote = false; out_stream << buffer; out_stream << "\n"; return *this; } is_it_in_quote = true; } if (is_it_in_quote) { out_stream << buffer; } return *this; }};int main() { std::ifstream file("data.txt"); // Открываем файл if (!file.is_open()) { cout << "File is not exits!"; return 1; } QuotesFinder finder(file); // Создаём обёртку из файлового потока while (!finder.eof()) // Пока не достигли конца потока finder >> cout; // переправляем очередной кусок информации в поток вывода}
Парк «Феофанія»
«Феофанія» - парк-пам'ятник садово-паркового мистецтва та садово-парковий комплекс розташований на території Голосіївського району, який створено в 1972 році.
Заповідник розташований в південній частині Голосіївського району. Головною прикрасою парку вважають ланцюжок із п’яти озер, їх називають палладінські озера. На території «Феофанії» розташований гідрологічний пам'ятник природи місцевого значення та два водних джерела, багато дерев, кущів та ліан. Зберіглося багато дерев віком від 100 до 300 років і більше. У парку були зареєстровані 9 червонокнижних видів комах.
Парк «Кіото»
Парк був заснований у 1972 році , він знаходиться на Лісовому масиві. Всі деталі та символіка були запозичені із паркової культури Японії.
В центрі «Кіото» розташований сад каменів. З рослин можна побачити вікові сосни, японський клен. У вересні 2011 році була висаджена алея сакур. Дерева висаджені в два ряди вздовж пішохідних доріжок з внутрішньої сторони. В парку є дзен-сад — гравієвий сад в японському стилі з сухим озером, посеред якого стоять два камені, з'єднані містком. Поряд знаходиться альтанка та водоспад і сухий струмок. В озері живуть червоні рибки.
Объяснение:
Итак, целевой язык - C++. Это значит мы - радостные обладатели технологии потоков, с коей мы будем производить весь ввод/вывод как при работе с файлами, так и при работе со стандартным вводом/выводом (консолью).
Ну а раз уж мы работаем с потоками, то будем делать это красивенько: создадим класс-обёртку для потока ввода, цель которого - поиск в этом потоке цитат и отправка их на поток вывода (который мы передаём).
[!] Стоит отметить, что по заданию не сказано, что есть разница между ' и ". Поэтому будем считать их одинаковыми.
[!] Внимание! Рядом с исполняемым файлом надо создать текстовый файл data.txt c текстом и цитатами.
КодС++11
#include <iostream>#include <fstream>using std::cout;class QuotesFinder { std::istream &in_stream; bool is_it_in_quote = false;public: QuotesFinder() = delete; QuotesFinder(QuotesFinder&&) = default; QuotesFinder(QuotesFinder const&) = default; explicit QuotesFinder(std::istream &is) : in_stream(is) {} [[nodiscard]] bool eof() const { return in_stream.eof(); } // Вот тут происходит вся магия QuotesFinder& operator >> (std::ostream& out_stream) { char buffer; in_stream.get(buffer); //Получаем очередной символ из потока if (buffer == '\"' || buffer == '\'') { if (is_it_in_quote) { is_it_in_quote = false; out_stream << buffer; out_stream << "\n"; return *this; } is_it_in_quote = true; } if (is_it_in_quote) { out_stream << buffer; } return *this; }};int main() { std::ifstream file("data.txt"); // Открываем файл if (!file.is_open()) { cout << "File is not exits!"; return 1; } QuotesFinder finder(file); // Создаём обёртку из файлового потока while (!finder.eof()) // Пока не достигли конца потока finder >> cout; // переправляем очередной кусок информации в поток вывода}