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




Формат входных данных.
Ввод: Создать два объекта базового класса, введя их размерность и характеристики,
затем создать два объекта производного класса String, введя их размерность и характеристики, после этого
создать два объекта производного класса BitString, введя их размерность и характеристики. Затем
выполнять действия, предписанные командами ввода:
1- изменить элемент с
указанным номером первого объекта базового класса;
2- изменить элемент с
указанным номером второго объекта базового класса;
3- изменить первый объект
производного класса String;
4- изменить второй объект
производного класса String;
5- изменить первый объект
производного класса BitString;
6- изменить второй объект
производного класса BitString;
0 - выход.
Вывод: После создания объекта, либо изменения его параметров,
выводить сведения об объекте Array(элементы
первого массива, элементы второго массива, поэлементная сумма), либо String (первая
строка(длина, элементы), вторая строка(длина, элементы), сцепление строк(длина,
элементы), поиск второй строки в первой), либо 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
5 E B D A C
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 2 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
String1 10 3ABCDE8623 String2 5 EBDAC
String1+String2 15 3ABCDE8623EBDAC net podstroki!
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
String1 10 203ADBC895 String2 5 EBDAC
String1+String2 15 203ADBC895EBDAC net podstroki!
String1 10 203ADBC895 String2 5 12334
String1+String2 15 203ADBC89512334 net podstroki!
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