русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Лабораторна робота 5


Дата добавления: 2015-07-09; просмотров: 837; Нарушение авторских прав


Тема: введення/виведення потоками, робота з файлами,
створення нових потокових операцій

 

Варіант 1

Створити динамічний клас для роботи з одновимірними масивами чисел дійсного типу. Здійснити перевантаження символів операцій:

" = " - динамічне присвоєння,

" + " - по елементне додавання,

" - " - по елементне віднімання,

" * " - скалярне множення масивів,

" [ ] " - доступ до елементу з контролем.

Крім того перевантажити операції введення із файлу і виведення у файл з символами " << " , " >> " таким чином:

f << A або A >> f - виведення (запис) значення A у файл f,



f >> A або A << f - введення (читання) значення A із файлу f.

Тип елементу масиву обрати самостійно.

 

Варіант 2

Створити динамічний клас для роботи з рядками символів. Максимальна довжина послідовності - 65535, код завершення послідовності - нуль. Здійснити перевантаження символів операцій:

" + " - конкатенація (з’єднання) рядків,

" - " - вилучення підрядку,

" < " - відношення "менше",

" <= " - відношення "менше чи дорівнює",

" > " - відношення "більше",

" >= " - відношення "більше чи дорівнює",

" == " - відношення "дорівнює",

" != " - відношення "не дорівнює".

За відношення порядку ("менше", "більше", "менше чи дорівнює", "більше чи дорівнює") вважати відношення лексикографічного порядку.

Крім того перевантажити операції введення із файлу і виведення у файл з символами " << " , " >> " таким чином:

f << A або A >> f - виведення (запис) значення A у файл f,



f >> A або A << f - введення (читання) значення A із файлу f, де f - покажчик на файл.

 

Варіант 3

Створити динамічний клас для роботи з рядками однобайтових символів. Максимальна довжина послідовності - 254. Перший байт робочого масиву повинен містити інформацію про фактичну кількість символів у рядку. Здійснити перевантаження символів операцій:

" + " - конкатенація (з’єднання) рядків,

" - " - вилучення підрядку,

" < " - відношення "менше",

" <= " - відношення "менше чи дорівнює",

" > " - відношення "більше",

" >= " - відношення "більше чи дорівнює",

" == " - відношення "дорівнює",

" != " - відношення "не дорівнює".

За відношення порядку ("менше", "більше", "менше чи дорівнює", "більше чи дорівнює") вважати відношення лексикографічного порядку.

Крім того перевантажити операції введення із файлу і виведення у файл з символами " << " , " >> " таким чином:

f << A або A >> f - виведення (запис) значення A типу "рядок" у файл f,

f >> A або A << f - введення (читання) значення A із файлу f, де f - покажчик на файл.

Передбачити обробку виключної ситуації - перевищення кількості символів рядка максимальної припустимої величини - 254.

 

Варіант 4

Створити клас для роботи з множинами. Максимальна кількість елементів множини - 65534. Здійснити перевантаження символів операцій:

" + " - об’єднання множин,

" - " - віднімання множин,

" * " - переріз множин,

" <= " - відношення включення (перевіряється, чи є множина, що надана лівим операндом, підмножиною множини, що надана правим операндом),

" >= " - відношення включення (перевіряється, чи є множина, що надана правим операндом, підмножиною множини, що надана лівим операндом),

" == " - еквівалентність множин,

" != " - нееквівалентність множин,

Крім того перевантажити операції введення із файлу і виведення у файл з символами " << " , " >> " таким чином:

f << A або A >> f - виведення (запис) значення A типу "множина" у файл f,

f >> A або A << f - введення (читання) значення A із файлу f, де f - покажчик на файл.

 

Варіант 5

Написати програму, яка здійснює побайтне копіювання інформації з одного файлу в інший. Імена файлів вказуються у командній стрічці. Якщо ім’я файлу-приймача не вказано, програма повинна виводити інформацію із файлу-джерела на екран. Для виконання операцій обміну застосувати потокові операції.

 

Варіант 6

Створити класи bifstream i bofstream для виконання файлових операцій читання і запису значень дійсного типу у бінарному режимі. Застосувати потокові операції введення/виведення. Тип значень обрати самостійно з наступних: float, double, extended.

 

Варіант 7

Перевантажити символ операції “>>” таким чином, щоб можна було робити копіювання файлу за допомогою такого оператору:

fa >> fb ;

де fa, fb – потоки, що пов’язані з файлами.

Операція “>>” повинна повертати значення потоку fa так, щоб можна було робити множинне копіювання:

fa >> fb >> fc;

 

Варіант 8

Написати функцію, яка повертає значення дескриптору файла, пов’язаного з потоком. Функцію треба створити так, щоб вона працювала для потоків ifstream, ofstream, fstream. Створити файли, відкрити їх для читання, запису і введення/виведення за допомогою вказаних вище потоків і отримати їх дескриптори.

 

Варіант 9

Створити макрос-функцію, яка повертає значення дескриптору файла, пов’язаного з наданим потоком. Створити файли, відкрити їх для читання, запису і введення/виведення за допомогою потоків ifstream, ofstream, fstream і отримати їх дескриптори.

 

 



<== предыдущая лекция | следующая лекция ==>
Лабораторна робота 4 | Лабораторна робота 6


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.891 сек.