Семинар 3. Задание 3. Виртуальные функции. Вариант 2.




Формат входных данных.
Ввод: Создать два объекта базового класса, введя их размерность и характеристики,
затем создать два объекта производного класса Hex, введя их размерность и характеристики, после этого
создать два объекта производного класса BitString, введя их размерность и характеристики. Затем
выполнять действия, предписанные командами ввода:
1- изменить элемент с
указанным номером первого объекта базового класса;
2- изменить элемент с
указанным номером второго объекта базового класса;
3- изменить первый объект
производного класса Hex;
4- изменить второй объект
производного класса Hex;
5- изменить первый объект
производного класса BitString;
6- изменить второй объект
производного класса BitString;
0 - выход.
Вывод: После создания объекта, либо изменения его параметров,
выводить сведения об объекте Array(элементы
первого массива, элементы второго массива, поэлементная сумма), либо Hex (первое число,
второе число, x1+x2, x1-x2, x1*x2, x1/x2), либо BitString (первое
число, второе число, x1 and x2, x1 or x2, x1 xor x2, not x1, not x2).
Пример входных данных:
4 10 24 3 4 1 203 2 724
10 3 A B C D
E 8 6 2 3 1 9 E
B D
A C 8 4 3
8 1 1 1 1 0 0 1 1 0 0 1 0 1 0
1 1
1 3 94
2 2 120
3 2 0 3 A D B C 8 9 5
4 1 1 1 2 2 2 3 3 3 4
5 1 1 0 0 0 1 1 1
6 1 1 1 1 1 1 0 0
0
Пример выходных данных:
Array1 10 24 3 4 Array2 1 203 2 724
Array1+Array2 11 227 5 728
Hex1 3268EDCBA3 Hex2 348CADBE91
Hex1+Hex2 66f59b8a34
Hex1-Hex2 -223bff2ee
Hex1*Hex2 3e5d799acfa5153
Hex1/Hex2 0
BitString1 11110011 BitString2 00101011
BitString1 & BitString2 00100011
BitString1 ! BitString2 11111011
BitString1 ^ BitString2 11011000
! BitString1 00001100 ! BitString2
11010100
Array1 10 24 3 94 Array2 1 203 2 724
Array1+Array2 11 227 5 818
Array1 10 24 3 94 Array2 1 203 120 724
Array1+Array2 11 227 123 818
Hex1 598CBDA302 Hex2 348CADBE91
Hex1+Hex2 8e196b6193
Hex1-Hex2 25000fe471
Hex1*Hex2 cc4396e1b6bed022
Hex1/Hex2 1
Hex1 598CBDA302 Hex2 4333222111
Hex1+Hex2 9cbfdfc413
Hex1-Hex2 16599b81f1
Hex1*Hex2 b89bb345d6df1522
Hex1/Hex2 1
BitString1 11000111 BitString2 00101011
BitString1 & BitString2 00000011
BitString1 ! BitString2 11101111
BitString1 ^ BitString2 11101100
! BitString1 00111000 ! BitString2 11010100
BitString1 11000111 BitString2 11111100
BitString1 & BitString2 11000100
BitString1 ! BitString2
11111111
BitString1 ^ BitString2 00111011
! BitString1 00111000 ! BitString2 00000011