Выбрать любую 1 задачу в каждом задании и реализовать ее на трех языках: С#, Java, Python
Лабораторная работа
в среде программирования C#, Java, Python
Среда программирования: C#, Java, Python
Название работы: Выбрать любую 1 задачу в каждом задании и реализовать ее на трех языках: С#, Java, Python
Вид работы: Лабораторная работа
Описание: Прилагаю файл в котором даны два задания для реализации. В каждом задании есть множество задач. Необходимо выбрать любую 1 задачу в каждом задании и реализовать ее на трех языках: С#, Java, Python.
Получается в итоге будет реализована какая-то одна задача из первого задания на трех языках и одна задача какая-то из второго задания на трех языках. Итого 6 файлов с программами.
Задание 1.
Функции - члены структур.
Задача 1. Вектор в трехмерном евклидовом пространстве задан своими
полярными координатами. Обязательны функции-члены класса:
а) ввод в вектора;
б) вывода вектора;
в) функция, которая возвращает рабочий вектор в декартовых
координатах. Другие функции можно ввести по желанию.
Задача 2. Угол на плоскости. Обязательные члены класса: величина угла
в градусах; функции-члены для ввода/вывода величина угла, перевода
величины угла в радианы, нахождения синуса угла.
Задача 3. Комплексное число, задаваемое своей вещественной и мнимой
частями (например, 5+3i задается парой (5, 3)). Обязательны функции-члены
класса для ввода/вывода числа, сложения, произведения двух чисел, а также
возведения числа в целую степень.
Задача 4. Комплексное число, задаваемое своим модулем и углом
(например, число 10 * (cos(/6) + i * sin(/6)) задается парой (10,/6).
Обязательны функции-члены класса для ввода/вывода числа, сложения,
произведения двух чисел, а также возведения числа в целую степень.
Задача 5. Кольцевой буфер емкостью 1024 вещественных числа. Доступ
к элементам буфера – как к элементам очереди. Обязательны функции-члены
класса для инициализации буфера, добавления/удаления элемента,
определения количества свободного/занятого пространства в буфере.
Задача 6. Стек вещественных чисел. Обязательны функции-члены класса
для добавления/удаления элемента, проверки присутствия указанного
элемента, вывода текущих элементов стека.
Задача 7. Двунаправленный список. Обязательны функции-члены класса
для добавления/удаления элемента, проверки присутствия указанного
элемента, вывода текущих элементов списка.
Задача 8. Кольцевой список. Обязательны функции-члены класса для
добавления/удаления элемента, проверки присутствия указанного элемента,
вывода текущих элементов списка.
Задача 9. Бинарное дерево. Обязательны функции-члены класса для
добавления/удаления элемента, проверки присутствия указанного элемента,
вывода текущих элементов дерева.
Задача 10. Точка на экране в текстовом (или графическом) режиме.
Должны быть предоставлены возможности
высветить точку в определенном тесте экрана определенным цветом;
определить, видима ли точка в данный момент;
получить координаты точки после поворота отрезка, соединяющего эту
точку с началом координат, на заданный угол.
Задача 11. Квадратная целочисленная матрица. Обязательны функции-члены класса для ввода/вывода матрицы, вычисления следа матрицы и её
определителя.
Задача 12. Полином. Обязательны функции-члены класса для вывода
полинома, его нормализации и вывода по убыванию степеней переменной, а
также сложения и умножения двух полиномов.
Задание 13. Отрезок, задаваемый координатами своих концов.
Обязательные функции-члены класса:
ввод координат концов отрезка;
изображение отрезка на экране;
нахождение координат середины отрезка и вывода на её месте символа с
кодом 002;
получить новые координаты концов отрезка после поворота относительно
своего центра на заданный угол.
Задание №2
Сложные классы
Задача 1
Описать класс, реализующий стек. Написать программу, использующую этот
класс для моделирования Т-образного сортировочного узла на железной
дороге. Программа должна разделять на два направления состав, состоящий
из вагонов двух типов (на каждое направление формируется состав из
вагонов одного типа). Предусмотреть возможность формирования состава из
файла и с клавиатуры.
Задача 2
Описать класс, реализующий бинарное дерево, обладающее возможностью
добавления новых элементов, удаления существующих, поиска элемента по
ключу, а также последовательного доступа ко всем элементам.
Написать программу, использующую этот класс для представления англорусского словаря. Программа должна содержать меню, позволяющее
осуществить проверку всех методов класса. Предусмотреть возможность
формирования словаря из файла и с клавиатуры.
Задача 3
Построить систему классов для описания плоских геометрических фигур:
круг, квадрат, прямоугольник. Предусмотреть методы для создания объектов,
перемещения на плоскости, изменения размеров и вращения на заданный
угол.
Написать программу, демонстрирующую работу с этими классами.
Программа должна содержать меню, позволяющее осуществить проверку
всех методов класса.
Задача 4
Построить описание класса, содержащего информацию о почтовом адресе
организации. Предусмотреть возможность раздельного изменения составных
частей адреса, создания и уничтожения этого класса.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 5
Составить описание класса для представления комплексных чисел.
Обеспечить выполнение операций сложения, вычитания и умножения
комплексных чисел.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 6
Составить описание класса для объектов-векторов, задаваемых координатами
концов в трехмерном пространстве. Обеспечить операции сложения и
вычитания векторов с получением нового вектора (суммы или разности),
вычисления скалярного произведения двух векторов, длины вектора,
косинуса угла между векторами.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 7
Составить описание класса прямоугольников со сторонами, параллельными
осям координат. Предусмотреть возможность перемещения прямоугольников
на плоскости, изменения размеров, построения наименьшего
прямоугольника, содержащего два заданных прямоугольника, и
прямоугольника, являющегося общей частью (пересечением) двух
прямоугольников.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 8
Составить описание класса для определения одномерных массивов целых
чисел (векторов). Предусмотреть возможность обращения к отдельному
элементу массива с контролем выхода за пределы массива, возможность
задания произвольных границ индексов при создании объекта и выполнения
операций поэлементного сложения и вычитания массивов с одинаковыми
границами индексов, умножения и деления всех элементов массива на
скаляр, вывода на экран элемента массива по заданному индексу и всего
массива.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 9
Составить описание класса для определения одномерных массивов строк
фиксированной длины. Предусмотреть контроль выхода за пределы массива,
возможность обращения к отдельным строкам массива по индексам,
выполнения операций поэлементного сцепления двух массивов с
образованием нового массива, слияния двух массивов с исключением
повторяющихся элементов, а также вывод на экран элемента массива по
заданному индексу и всего массива.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.2
Задача 10
Составить описание класса многочленов от одной переменной, задаваемых
степенью многочлена и массивом коэффициентов. Предусмотреть методы
для вычисления значения многочлена для заданного аргумента, операции
сложения, вычитания и умножения многочленов с получением нового
объекта-многочлена, вывод на экран описания многочлена.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 11
Составить описание класса одномерных массивов строк, каждая строка
задается длиной и указателем на выделенную для нее память. Предусмотреть
контроль выхода за пределы массивов, возможность обращения к отдельным
строкам массива по индексам, выполнения операций поэлементного
сцепления двух массивов с образованием нового массива, слияния двух
массивов с исключением повторяющихся элементов, а также вывод на экран
элемента массива и всего массива.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 12
Составит описание класса, обеспечивающего представление матрицы
произвольного размера с возможностью изменения числа строк и столбцов,
вывода на экран подматрицы любого размера и всей матрицы.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 13
Написать класс для эффективной работы со строками, позволяющий
форматировать и сравнивать строки, хранить в строках числовые значения и
извлекать их. Для этого необходимо реализовать:
• Перегруженные операторы присваивания и конкатенации;
• Операции сравнения и приведения типов;
• Преобразование в число любого типа;
• Форматный вывод строки.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 14
Описать класс «домашняя библиотека». Предусмотреть возможность работы
с произвольным числом книг, поиска книги по какому-либо признаку (например, по автору или по году издания), добавления книг в библиотеку, удаления книг из нее, сортировки книг по разным полям.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 15
Описать класс «записная книжка». Предусмотреть возможность работы с
произвольным числом записей, поиска записи по какому-либо признаку
(например, по фамилии, дате рождения или номеру телефона), добавления и
удаления записей, сортировки по разным полям.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 16
Описать класс «студенческая группа». Предусмотреть возможность работы с
переменным числом студентов, поиска студента по какому-либо признаку
(например, по фамилии, дате рождения или номеру телефона), добавления и
удаления записей, сортировки по разным полям.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 17
Описать класс, реализующий тип данных «вещественная матрица» и работу с
ними. Класс должен реализовывать следующие операции над матрицами:
- Сложение, вычитание, умножение, деление (+, -, *, /) (умножение и деление как на другую матрицу, так и на число);
- Комбинированные операции присваивания (+=, -=, *=, /=);
- Операции сравнения на равенство/неравенство;
- Операции вычисления обратной и транспонированной матрицы,
операцию возведения в степень;
- Методы вычисления детерминанта и нормы;
- Методы, реализующие проверку типа матрицы (квадратная,
диагональная, нулевая, единичная, симметрическая, верхняя
треугольная, нижняя треугольная);
- Операции ввода/вывода в стандартные потоки (см. с. 284).
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 18
Описать класс «множество», позволяющий выполнять основные операции –
добавление и удаление элемента, пересечение, объединение и разность
множеств.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Задача 19
Описать класс, реализующий стек. Написать программу, использующую этот
класс для отыскания прохода по лабиринту.
Лабиринт представляется в виде матрицы, состоящей из квадратов. Каждый
квадрат либо открыт, либо закрыт. Вход в закрытый квадрат запрещен. Если
квадрат открыт, то вход в него возможен со стороны, но не с угла. Каждый
квадрат определяется его координатами в матрице. После отыскания прохода
программа печатает найденный путь в виде координат квадратов.
Задача 20
Описать класс «предметный указатель». Каждая компонента указателя
содержит слово и номера страниц, на которых это слово встречается.
Количество номеров страниц, относящихся к одному слову, от одного до
десяти. Предусмотреть возможность формирования указателя с клавиатуры и
из файла, вывода указателя, вывода номеров страниц для заданного слова,
удаления элемента из указателя.
Написать программу, демонстрирующую работу с этим классом. Программа
должна содержать меню, позволяющее осуществить проверку всех методов
класса.
Год: 2021
Данный заказ (лабораторная работа) выполнялся нашим сайтом в 2021-м году, в рамках этого заказа была разработана программа в среде программирования C#, Java, Python. Если у Вас похожее задание на программу, которую нужно написать на C#, Java, Python, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2021-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".
Viber:
+79374242235
Telegram: kursovikcom ВКонтакте: kursovikcom WhatsApp +79374242235 E-mail: info@kursovik.com Skype: kursovik.com |