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




Формат входных данных.
Ввод: Создать два объекта базового класса, введя их размерность и характеристики, затем
создать два объекта производного класса BitString, введя их размерность и характеристики, после этого
создать два объекта производного класса Octal, введя их размерность и характеристики. Затем
выполнять действия, предписанные командами ввода:
1- изменить элемент с
указанным номером первого объекта базового класса;
2- изменить элемент с
указанным номером второго объекта базового класса;
3- изменить первый объект
производного класса BitString;
4- изменить второй объект
производного класса BitString;
5- изменить первый объект
производного класса Octal;
6- изменить второй объект
производного класса Octal;
0 - выход.
Вывод: После создания объекта, либо изменения его параметров,
выводить сведения об объекте Array(элементы
первого массива, элементы второго массива, поэлементная сумма), либо BitString (первое
число, второе число, x1 and x2, x1 or x2, x1 xor x2, not x1, not x2), либо
Octal (первое
число, второе число, x1+x2, x1-x2, x1*x2, x1/x2).
Пример входных данных:
4 10 24 3 4 1 203 2 724
10 1 0 1 0 1 1 1 0 1 1 1 1 0
1 1 1 0 1 0 1
8 7 7 6 1 5 2 3 4 5 6 7 2 3 4
5 6
1 3 94
2 2 120
3 1 0 1 0 0 0 1 1 1 1
4 1 1 1 0 0 0 0 1 0 1
5 1 1 2 2 3 3 4 4
6 4 4 3 3 2 2 0 0
0
Пример выходных данных:
Array1 10 24 3 4 Array2 1 203
2 724
Array1+Array2 11 227 5 728
BitString1 1010111011 BitString2 1101110101
BitString1 & BitString2 1000110001
BitString1 ! BitString2 1111111111
BitString1 ^ BitString2 0111001110
! BitString1 0101000100 ! BitString2 0010001010
Octal1 43251677 Octal2 65432765
Octal1+Octal2 130704664
Octal1-Octal2 -22161066
Octal1*Octal2 3544071320330313
Octal1/Octal2 0
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
BitString1 1010001111 BitString2 1101110101
BitString1 & BitString2 1000000101
BitString1 ! BitString2 1111111111
BitString1 ^ BitString2 0111111010
! BitString1 0101110000 ! BitString2 0010001010
BitString1 1010001111 BitString2 1110000101
BitString1 & BitString2 1010000101
BitString1 ! BitString2 1110001111
BitString1 ^ BitString2 0100001010
! BitString1 0101110000 ! BitString2 0001111010
Octal1 44332211 Octal2 65432765
Octal1+Octal2 131765176
Octal1-Octal2 -21100554
Octal1*Octal2 3636564026022035
Octal1/Octal2 0
Octal1 44332211 Octal2 00223344
Octal1+Octal2 44555555
Octal1-Octal2 44106645
Octal1*Octal2 12372706420004
Octal1/Octal2 176