ВАРИАНТ 90. Лабораторная работа по Технологии программирования

Раздел
Программирование
Просмотров
57
Покупок
0
Антиплагиат
Не указан
Размещена
19 Июл 2023 в 21:58
ВУЗ
Не указан
Курс
Не указан
Стоимость
999 ₽
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
rar
решение
110.1 Кбайт 999 ₽
Описание

Реализовать класс «Полином» (см. приложение 3). Дополнительные задания по вариантам:

67) Написать метод Process для выполнения над коэффициентами полинома требуемых преобразований. Вид преобразований должен быть представлен делегатом, передаваемым в этот метод в качестве параметра. Написать несколько предопределенных преобразований (для изменения знака коэффициентов, умножения или деления на константу и т.п.).

68) Реализовать еще одну версию объекта типа «Полином» в виде структуры. В комментариях пояснить, какие пришлось внести модификации в члены структуры по сравнению с членами класса.

69) Перегрузить для полиномов операторы «==» и «!=», а также метод Equals. Сравнение полиномов проводить поэлементно.

70) Определить в классе полинома еще один индексатор с параметром типа double, вычисляющий значение полинома в указанной точке.

71) Добиться того, чтобы оператор «&&» объединял полиномы. Результатом операции «x && y» должен быть полином, в котором коэффициенты полинома y располагаются правее коэффициентов полинома x.

72) Обеспечить возможность сложения и вычитания полиномов с операндами типа double и результатом типа полинома.

73) Добавить в класс метод, позволяющий брать производную любого порядка от полинома.

74) Добиться того, чтобы оператор «>>» понижал степень полинома на i, а оператор «<<» – увеличивал ее на i, где i – величина сдвига.

75) Обеспечить возможность сложения, вычитания и деления полиномов с операндами типа double и результатом типа double, допустимые в том случае, если полином состоит из единственного коэффициента.

76) Перегрузить для полинома операторы true, false и неявного преобразования полинома к типу bool. Будем считать, что полином = «ложь», если все его коэффициенты равны нулю, и «истина» в противном случае.

77) Добавить в класс метод, позволяющий найти первообразную полинома, а также метод, использующий первообразную для вычисления определенного интеграла полинома на указанном отрезке [a, b].

78) Обеспечить поиск требуемого коэффициента полинома. Критерий поиска должен задаваться в виде делегата, передаваемого в этот метод в качестве параметра. Например, поиск минимального или максимального коэффициента, минимального или максимального коэффициента по абсолютному значению, первого или последнего отрицательного, положительного или нулевого коэффициента и т.д.

79) Реализовать в классе интерфейс IEnumerable, позволяющий использовать полином в качестве итератора, например для извлечения его коэффициентов в цикле foreach.

80) Реализовать в классе интерфейс ICloneable, а также метод Copy, возвращающий копию полинома, и метод Assign, принимающий аргумент типа object. Если данный аргумент содержит ссылку на полином, скопировать его в текущий экземпляр полинома.

81) Перегрузить в полиноме операторы отношения и реализовать интерфейс IComparable. Сравнение полиномов осуществлять на основании значений их коэффициентов по абсолютному значению.

82) Реализовать в классе метод, формирующий полином степени n на основании значений n его корней.

83) Избавиться от хранения одинаковых копий полиномов. Для этого реализовать класс-регистратор, хранящий ссылки на все имеющиеся полиномы. Прямой вызов конструкторов полиномов запретить, вместо этого реализовать метод CreateInstance, возвращающий новый полином, если он уникален, и ссылку на имеющийся полином в противном случае. Экземпляр класса-регистратора создавать в статическом конструкторе полинома.

84) Используя оператор yield, реализовать в классе итератор для перечисления всех коэффициентов полинома.

85) Реализовать в классе проверку типа полинома – является ли он четным, нечетным или ни тем, ни другим. Результат возвращать в виде константы перечисления. Результат должен быть получен на основе анализа коэффициентов полинома.

86) Перегрузить для полинома унарные операторы «+» и «- » с сохранением их математического смысла.

87) Реализовать в классе интерфейс IList. Некоторые методы данного интерфейса можно сделать в виде заглушек (генерировать в них исключение NotSupportedException) – например, Insert, Remove и т.д.

88) Реализовать в классе интерфейс ICollection для возможности интерпретации полинома как коллекции.

89) Реализовать в классе интерфейс IFormattable для форматирования вывода коэффициентов полинома на экран.

90) Добавить в класс методы Split и Join. Первый должен возвращать два полинома, являющиеся частями исходного полинома (разделяя его по коэффициенту с указанной степенью). Второй метод должен реализовывать обратную операцию – соединять два полинома в один.

далее до 99

Вам подходит эта работа?
Похожие работы
Основы программирования
Тест Тест
16 Мая в 14:20
31 +19
0 покупок
Основы программирования
Тест Тест
14 Мая в 19:38
33 +5
0 покупок
Основы программирования
Тест Тест
14 Мая в 17:38
28 +9
0 покупок
Основы программирования
Тест Тест
14 Мая в 17:26
29 +8
0 покупок
Основы программирования
Курсовая работа Курсовая
14 Мая в 14:35
42 +8
0 покупок
Другие работы автора
Уголовный процесс
Курсовая работа Курсовая
6 Мая в 13:25
25
0 покупок
Финансовый менеджмент
Курсовая работа Курсовая
21 Мар в 12:26
87
0 покупок
Конкуренция и антимонопольная политика
Курсовая работа Курсовая
13 Ноя 2023 в 20:17
165
1 покупка
Теория государства и права
Курсовая работа Курсовая
2 Ноя 2023 в 00:26
184 +1
0 покупок
Экономика
Доклад Доклад
11 Окт 2023 в 13:03
129
0 покупок
Уголовный процесс
Статья Статья
11 Окт 2023 в 12:54
109
0 покупок
Социология
Эссе Эссе
11 Окт 2023 в 12:51
88
0 покупок
Экономика
Эссе Эссе
11 Окт 2023 в 12:48
127 +1
0 покупок
История
Эссе Эссе
11 Окт 2023 в 12:47
65
0 покупок
Международное право
Эссе Эссе
11 Окт 2023 в 12:43
111
0 покупок
Уголовный процесс
Эссе Эссе
11 Окт 2023 в 12:42
39
0 покупок
Философия
Эссе Эссе
11 Окт 2023 в 12:40
53
0 покупок
Темы журнала
Показать ещё
Прямой эфир