Содержание
1. Постановка задачи 3
2. Исходные данные 3
3. Особые ситуации 3
4. Алгоритм решения задачи 3
5. Структура программы 4
6. Форматы представления данных 4
7. Результаты работы программы 6
Список литературы 7
Приложение 8
1. Постановка задачи
Используя библиотеку MFC, необходимо разработать программу, которая позволит решить следующие задачи:
1. Создать 30 квадратов со случайными параметрами (координаты центра, площадь, цвет) и вывести их на экран.
2. Обеспечить интерфейс изменения параметров квадратов.
3. Созданные квадраты должны разлетаться в разные стороны, при достижении границ они отталкиваются от них.
2. Исходные данные
Исходные данные при создании нового документа инициализируются случайным образом, первоначальная площадь квадратов генерируются в пределах от 4 до 10. Количество квадратов 30.
3. Особые ситуации
1. При инициализации квадраты не должны накладываться друг на друга.
2. В процессе перемещения квадраты не должны вылетать за указанные координаты экранной области.
4. Алгоритм решения задачи
Для реализации движения квадратов был написан алгоритм, приводящий к их перемещению в хаотичном порядке, а в последующем появлением квадратов, при достижении ими границы – отталкиваться. Алгоритм представляет собой простейший вариант имитации движения.
5. Структура программы
Библиотека MFC (Microsoft Foundation Classes) предлагает поддержку модели документ/представление, в которой логика работы приложения явным образом отделяется от кода, ответственного за пользовательский интерфейс. Разделение происходит как на уровне файлов (этот код содержится в разных единицах трансляции), так и на уровне классов – за хранение данных приложения и работу с ними отвечает один класс, а за реализацию пользовательского интерфейса – другой. В нашем случае код этих классов размещен в следующих файлах:
Класс
Файл
Назначение
CSpheresDoc
SpheresDoc.h
Заголовочный файл документа, хранящего данные приложения.
SpheresDoc.cpp
Исходный файл документа, хранящего данные приложения.
CSpheresView
SpheresView.h
Заголовочный файл вида.
SpheresView.cpp
Исходный файл вида, отвечающий за отображение информации.
6. Форматы представления данных
В программе использовались следующие константы:
Имя
Тип
Значение
Описание
min_area
const int
4
Минимальная площадь квадрата
max_area
const int
100
Максимальный площадь квадрат