Задание для лабораторных по КПиЯП ( С++ 10-19) / ЛР12 (КПиЯП)
.docxЛР13. Использование свойства полиморфизма и исследование механизма виртуальных функций
Задания
1. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Plus и Minus с перегруженной функцией matem(int x, int y) для сложения и вычитания параметров соответственно.
2. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран фразу: “Я знаю слово x”. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x) для вывода на экран фраз: “Второе слово – х”, “Третье слово – х” соответственно.
3. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран параметр x. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x), которая удаляет из слова х первую и последнюю букву (класс Word2) или добавляет пробел после каждой буквы (класс Word3)
4. Создайте класс Matr, определите в нем виртуальную функцию-член massiv(int n), которая определяет сумму элементов массива. Создайте производные классы Matr1 и Matr2 с перегруженной функцией massiv(int n) для нахождения мах и мin элементов массива соответственно.
5. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения мах и мin элементов квадратной матрицы соответственно.
6. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения сумм главной и побочной диагоналей квадратной матрицы соответственно.
7. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n, int m), которая определяет сумму элементов прямоугольной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения мах элемента в первой строке (класс Matr1) и min элемента во второй строке (класс Matr2).
8. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Umn и Del с перегруженной функцией matem(int x, int y) для умножения и деления параметров соответственно.
9. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран фразу: “Я знаю слово x”. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x) для вывода на экран фраз: “Второе слово – х”, “Третье слово – х” соответственно.
10. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран параметр x. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x), которая заменяет в слове х первую и последнюю букву на цифру 0 (класс Word2) или добавляет цифру 1 после каждой буквы (класс Word3)
11. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения разности элементов четных и нечетных столбцов квадратной матрицы соответственно.
12. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет произведение элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения мах и мin элементов квадратной матрицы соответственно.
13. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Plus и Div с перегруженной функцией matem(int x, int y) для суммы и деления параметров соответственно.
14. Создайте класс Matr, определите в нем виртуальную функцию-член massiv(int n), которая определяет сумму элементов массива. Создайте производные классы Matr1 и Matr2 с перегруженной функцией massiv(int n) для нахождения мах и мin элементов первого и последнего столбцов массива соответственно.
15. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения произведения главной и побочной диагоналей квадратной матрицы соответственно.
16. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n, int m), которая определяет сумму элементов прямоугольной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения мах элемента в третьей строке (класс Matr1) и min элемента в пятой строке (класс Matr2).
17. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Umn и Del с перегруженной функцией matem(int x, int y) для умножения и деления параметров соответственно.
18. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Umn и Minus с перегруженной функцией matem(int x, int y) для умножения и вычитания параметров соответственно.
19. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы SQ и Q3 с перегруженной функцией matem(int x, int y) для возведения в квадрат и куб параметров соответственно.
20. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран параметр x. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x), которая заменяет в слове х первую букву на цифру 0 (класс Word2) или добавляет цифру 2 после каждой буквы (класс Word3).
21. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран параметр x. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x), которая заменяет в слове х последнюю букву на цифру 0 (класс Word2) или добавляет цифру 1 после каждой буквы (класс Word3).
22. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения разности главной и побочной диагоналей квадратной матрицы соответственно.
23. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения суммы элементов первой и последней строк квадратной матрицы соответственно.
24. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения суммы элементов первого и последнего столбцов квадратной матрицы соответственно.
25. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения суммы элементов четных и нечетных строк квадратной матрицы соответственно.
26. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения суммы элементов четных и нечетных столбцов квадратной матрицы соответственно.
27. Создайте класс Word, определите в нем виртуальную функцию-член word_main(*char x), которая выводит на экран фразу: “Я не знаю слово x”. Создайте производные классы Word2 и Word3 с перегруженной функцией word_main(*char x) для вывода на экран фраз: “Второе слово – х”, “Третье слово – х” соответственно.
28. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы Max и Min с перегруженной функцией matem(int x, int y) для определения максимального и минимального параметров соответственно.
29. Создайте класс Matematica, определите в нем виртуальную функцию-член matem(int x, int y), которая выводит на экран значения параметров. Создайте производные классы SQRT_ и STEP с перегруженной функцией matem(int x, int y) для корня и результата возведения в степень параметров соответственно.
30. Создайте класс Matr, определите в нем виртуальную функцию-член matrica(int n), которая определяет сумму элементов квадратной матрицы. Создайте производные классы Matr1 и Matr2 с перегруженной функцией matrica(int n) для нахождения произведения элементов четных и нечетных столбцов квадратной матрицы соответственно.