Целью лабораторной работы является освоение работы с многомерными массивами (матрицами), файлами различных типов (бинарными и текстовыми), а также принципов объектно-ориентированного программирования в C#.
Класс Matrix:
- Реализован класс для работы с матрицами размерностью n×m
- Созданы конструкторы для различных способов заполнения матриц
- Перегружены операторы: сложение (
+), вычитание (-), умножение (*) - Реализован метод
Transpose()для транспонирования матрицы - Переопределен метод
ToString()для красивого вывода матрицы
Реализовано:
-
Заполнение матриц (вариант 5):
- Первый массив: заполнение с клавиатуры по строкам от первых элементов к последним
- Второй массив: элементы ниже главной диагонали из [-70,150], на диагонали и выше из [17,170]
- Третий массив: заполнение по шаблону для n=5
-
Операции с матрицами (вариант 5):
- Вычисление матричного выражения:
A*B - C*6 - Реализована перегрузка операторов для матричных операций
- Вычисление матричного выражения:
-
Дополнительная задача (вариант 5):
- В двумерном массиве n×m выбрана диагональ, параллельная главной, с максимальной суммой элементов
Задание 4: Бинарные файлы (вариант 5)
- Создание бинарного файла со случайными числами
- Получение нового файла, исключив повторные вхождения чисел
- Сохранение порядка следования чисел
Задание 5: Бинарные файлы и структуры (вариант 5)
- Создана структура
Toyдля хранения данных об игрушках - Реализована XML-сериализация/десериализация
- Получение названий игрушек, цена которых ≤ k рублей и подходящих детям 5 лет
Задание 6: Текстовые файлы (вариант 5)
- Создание текстового файла с целыми числами (по одному в строке)
- Проверка наличия заданного числа в файле (возврат true/false)
Задание 7: Текстовые файлы (вариант 5)
- Создание файла с несколькими числами в строке
- Вычисление суммы всех элементов файла
Задание 8: Текстовые файлы (вариант 5)
- Создание текстового файла с произвольным текстом
- Копирование самой короткой и самой длинной строк в новый файл
Lab3/
├── Task1_3/ # Задания 1-3
│ ├── Matrix.cs # Класс для работы с матрицами
│ └── MatrixOperations.cs # Операции с матрицами
├── Task4_8/ # Задания 4-8
│ ├── FileOperations.cs # Работа с файлами
│ └── Toy.cs # Структура для игрушек
└── Program.cs # Главная программа с меню
- Создать консольное приложение C#
- Скопировать файлы в соответствующие папки проекта
- Добавить пространства имен
Lab3.Task1_3иLab3.Task4_8 - Скомпилировать и запустить проект
- Использовать меню для выбора задания
- Четкое разделение классов: Все классы разделены по папкам согласно заданиям
- Использование пространств имен: Пространство имен фиксировано -
Lab3 - Запрет инициализации полей при объявлении: Все поля инициализируются в конструкторах
- Интерактивное меню: Реализовано удобное меню для выбора заданий
- Обработка исключений: Все операции защищены от исключительных ситуаций
- XML-сериализация: Для задания 5 использована обязательная XML-сериализация