Хелпикс

Главная

Контакты

Случайная статья





Работа № 5. Наследование классов, механизм виртуальных функций



Задание к работе

Общая постановка. Пользовательский класс String должен содержать необходимые элементы-данные, которые создаются в динамической области памяти.

· Конструктор для создания строк: String (…);

· Деструктор: ~String();

· Метод ввода исходной строки: Set();

· Метод печати: void print(…);

Код методов – вне пространства определения класса. Программа иллюстрирует прямой и косвенный способы обращения к методам.

Ввести с клавиатуры строку символов S1. Признак окончания ввода строки - нажатие клавиши " Ввод". Программа должна содержать перегруженную операцию «=», использование которой скопирует S1 в S2.

Исходную и преобразованную строки вывести в файл.

 

Варианты заданий

1. Длина L нечетная, то удаляется символ, стоящий посередине строки;

2. Длина L четная, то удаляются 2 первых и 2 последних символа;

3. Длина L кратна 2-м, то удаляются все числа, которые делятся на 2;

4. Длина L кратна 3-м, то удаляются все числа, делящиеся на 3;

5. Длина L > 10, то удаляются все цифры;

6. Длина L > 15, то удаляются все a.. z;

7. Длина L=10, то удаляются все A.. Z;

8. Длина L кратна 4-м, то первая часть строки меняется местами со второй;

9. Длина L кратна 5-и, то подсчитывается количество скобок всех видов;

10. Длина L > 5-и, то выделяется подстрока до первого пробела;

11. Длина L > 6-и, то выделяется подстрока { } скобках;

12. Длина L > 10-и, то удаляется подстрока в [] скобках;

13. Длина L > 12-и, то удаляется подстрока до первой ( скобки;

14. Длина L кратна 4-м, то выделяется подстрока после последнего пробела;

15. Длина L > 5, то удаляются все точки.

16. Длина L четная, то выделяется подстрока до первого пробела

17. Длина L четная, то удаляется подстрока до первого пробела

18. Длина L четная, то выделяется подстрока со второго пробела

19. Длина L нечетная, то выделяется подстрока после первого пробела

20. Длина L нечетная, то удаляется подстрока со второго пробела

21. Длина L кратна 3, то удаляется каждый 3-й символ

22. Длина L четная, то удаляется каждый 2-й символ

23. Длина L нечетная, то

24. Длина L четная, то выделяется подстрока до последнего пробела

25. Длина L нечетная, то выделяется подстрока от последней цифры

26. Длина L=15, то удаляются все символы кроме A-Z

27. Длина L делится на 5, то удаляется все символы кроме a-z

28. Длина L четная и > =10, то удаляются все пробелы

29. Длина L нечетная и < 12, произвести инверсию (abcdef-> fedcba)

30. Длина L > 5 и < 30, изменить регистр символов (aBcDeF-> AbCdEf)

 

Контрольные вопросы

1. Как объявить динамическую строку в С++?

2. Какие вы знаете функции работы со строками?

3. Как определяются строки при передаче в функцию, в качестве фактических параметров?

4. Поясните механизм перегрузки операций для объектов данного класса.


 

 

Работа № 5. Наследование классов, механизм виртуальных функций

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.