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

Раздел
Программирование
Просмотров
74
Покупок
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

Вам подходит эта работа?
Похожие работы
Основы программирования
Контрольная работа Контрольная
22 Ноя в 09:34
7 +7
0 покупок
Основы программирования
Контрольная работа Контрольная
20 Ноя в 03:15
13 +3
0 покупок
Основы программирования
Контрольная работа Контрольная
18 Ноя в 00:36
16 +1
0 покупок
Другие работы автора
Другое
Курсовая работа Курсовая
19 Ноя в 16:33
14 +4
0 покупок
Физкультура и спорт
Статья Статья
15 Сен в 18:59
186 +2
2 покупки
Медицина
Реферат Реферат
15 Сен в 18:58
53 +1
0 покупок
Психология
Дипломная работа Дипломная
15 Сен в 18:58
109 +4
0 покупок
Экономика
Курсовая работа Курсовая
15 Сен в 18:57
76 +1
0 покупок
Экономика
Курсовая работа Курсовая
15 Сен в 18:56
49 +1
0 покупок
Экономика
Курсовая работа Курсовая
15 Сен в 18:56
72 +3
0 покупок
Интернет технологии
Курсовая работа Курсовая
15 Сен в 18:53
46
0 покупок
Экономика
Курсовая работа Курсовая
15 Сен в 18:50
53 +1
0 покупок
Экономика
Курсовая работа Курсовая
15 Сен в 18:49
52 +1
0 покупок
Административное право
ВАК ВАК
15 Сен в 18:47
49 +1
0 покупок
Конституционное право
Курсовая работа Курсовая
15 Сен в 18:47
47 +1
0 покупок
Другое
Реферат Реферат
15 Сен в 18:45
52 +1
0 покупок
Литература
Курсовая работа Курсовая
15 Сен в 18:43
59 +1
0 покупок
Темы журнала
Показать ещё
Прямой эфир