Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
27
Добавлен:
10.02.2015
Размер:
34.3 Кб
Скачать

Домашние задания. Вариант 22

Задание 1. Turbo Delphi

Часть 1.1 Разработать иерархию классов Delphi. Разместить определение классов в отдельном модуле. Класс, позволяющий рисовать линию некоторого размера и заданного направления из точки, определенной нажатием левой клавиши мыши. Класс, позволяющий рисовать такую же линию, но со стрелкой.

Вид линии определяется по положению радиокнопки, а все параметры задаются с использованием интерфейсных элементов.

В отчете показать иерархии используемых классов Delphi и разработанных классов, граф состояния пользовательского интерфейса и объектную декомпозицию.

Часть 1.2. Разработать программу, содержащую описание трех графических объектов:

правильные треугольник, квадрат, пятиугольник.

Реализуя механизм полиморфизма, привести объекты в одновременное синхронное колебательное движение вдоль осей, проходящих через их геометрические центры и параллельных главной диагонали экрана. Колебания должны затухать к центрам осей и затем возобновляться с возрастанием амплитуд вплоть до достижения объектами границ экрана.

Задание 2. С++.

Часть 2.1. Функции.

Дано натуральное число n. Написать программу, определяющую, есть ли среди чисел n,n+1,n+2,…2n близнецы, то есть простые числа, разность между которыми равна 2. Например, 11 и 13, 17 и 19. Вывести на печать все обнаруженные пары, а если таких пар нет, то соответствующее сообщение. Для определения близнецов и их наличия использовать функции.

Часть 2.2 Текстовая обработка.

Дана последовательность строк. Каждая строка состоит из слов, разделенных пробелами. Написать программу, обеспечивающую ввод строк и их корректировку. Корректировка заключается в следующем. Если слово содержит символы, отличные от букв латинского алфавита и цифр, то удалить его. Если слово состоит из букв латинского алфавита и цифр и начинается с цифры, заменить эту цифру символом «_» подчеркивание. Вести подсчет количества корректировок. Вывести на печать исходные и скорректированные последовательности строк.

Часть 2.3. Файлы.

Организовать программным способом символьные файлы F и G. Определить совпадают ли компоненты этих файлов. Если нет, то получить номер первой компоненты, с которой начинаются различия. В случае, когда один из файлов имеет N компонент (N>=0) и повторяет начало другого (более длинного) файла, ответом должно быть число N+1.

Задание 3. Программирование с использованием классов в С++.

Часть 3.1. Композиция.

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

Даны:

объект символ, умеющий печатать свое значение и отвечать на запрос о значении своего символьного поля.

Объект «строка» переменной длины, умеющий выводить на печать значение своих элементов, возвращать максимальную и текущую длины строки, а также номер элемента, с которого некоторая подстрока или символ входят в строку или 0, если такого вхождения нет.

Часть 3.2. Qt. Полиморфное наследование.

Разработать программу, содержащую описание трех графических объектов:

правильные треугольник, квадрат, пятиугольник.

Реализуя механизм полиморфизма, привести объекты в одновременное синхронное колебательное движение вдоль осей, проходящих через их геометрические центры и параллельных главной диагонали экрана. Колебания должны затухать к центрам осей и затем возобновляться с возрастанием амплитуд вплоть до достижения объектами границ экрана.

Соседние файлы в папке Домашние задания