- •Лабораторная работа № 1 рациональные числа
- •Теоретические сведения
- •Синтаксис объявления класса tRational
- •Программа работы
- •Исходные данные
- •Контрольные вопросы
- •Лабораторная работа № 2 комплексные числа
- •Теоретические сведения
- •Синтаксис объявления класса tComplex
- •Программа работы
- •Исходные данные
- •Контрольные вопросы
- •Лабораторная работа № 3 векторы
- •Теоретические сведения
- •Синтаксис объявления класса tVector
- •Программа работы
- •Контрольные вопросы
- •Лабораторная работа № 4 матрицы
- •Теоретические сведения
- •Арифметические операции с матрицами
- •Синтаксис объявления класса tMatrix
- •Основные свойства и методы компонента StringGrid
- •Программа работы
- •Исходные данные
- •Исходные данные
- •Контрольные вопросы
- •Лабораторная работа № 5 строки
- •Теоретические сведения
- •Программа работы
- •Исходные данные
- •Контрольные вопросы
- •Лабораторная работа № 6 стек
- •Теоретические сведения
- •Синтаксис объявления класса tStack
- •Программа работы
- •Контрольные вопросы
- •Лабораторная работа № 7 очередь
- •Теоретические сведения
- •Синтаксис объявления класса tQueue
- •Программа работы
- •Контрольные вопросы
- •Лабораторная работа № 8 деревья
- •Теоретические сведения
- •Синтаксис объявления класса tTreeNode
- •Синтаксис объявления класса tTree
- •Программа работы
- •Контрольные вопросы
- •Библиографический список
- •Содержание
Программа работы
Создать новый проект в меню FileðNewðVCL Forms Application, добавить к нему новый модуль (FileðNewðUnit) и сохранить все файлы в папке с именем ‘…\Лабораторная работа № 11’.
В заголовочной части второго модуля объявить класса TVector, а в исполняемом разделе модуля с расширением cpp определить все его методы в соответствии с ADT – форматом.
Создать на форме компоненты RadioGroup1 и Edit1 ¸ Edit6.
Рис. 4. Примерное расположение компонентов на форме
В обработчике выбора пунктов компонента RadioGroup1 объявить две объектных переменных с типом TVector, создав объекты с исходными данными, приведенными в Таблице №1, предусмотреть выполнение всех арифметических операций с присвоением в зависимости от выбранного пункта в компоненте RadioGroup1, используя оператор switch, и вывести значения координат результирующего вектора в компоненты Edit3 ¸ Edit5, а результат скалярного произведения векторов в компонент Edit6.
Исходные данные Таблица №1
-
№ Варианта
Вектор a
Вектор b
№ Варианта
Вектор a
Вектор b
1
(-4, 1, 3)
(2, 0, -1)
11
(-2, 0, 1)
(1, 2, -2)
2
(1, 2, -3)
(0, -1, 4)
12
(1, 2, -4)
(0, -3, 1)
3
(1, -1, 2)
(-2, 0, 3)
13
(-3, 0, 1)
(-3, 1, 2)
4
(-2, 1, 3)
(2, 3, -1)
14
(-4, 2, 1)
(1, -2, 0)
5
(-3, 0, 1)
(-1, 0, 4)
15
(-3, 3, 2)
(-2, 1, 3)
6
(0, 3, -2)
(5, -3, 2)
16
(0, -3, 1)
(5, -4, 1)
7
(4, 0, -1)
(2, -3, 0)
17
(2, 1, -3)
(2, -3, 1)
8
(2, -1, 4)
(-3, 0, 1)
18
(-2, 1, 4)
(3, 2, -1)
9
(0, 1, -3)
(2, 0, -3)
19
(0, -2, -1)
(-2, 1, 3)
10
(4, -1, 3)
(-1, 3, 1)
20
(-4, 1, 2)
(-2, 0, 4)
Запустить программу на выполнение и записать в отчет объявленный класс и все его методы, зарисовать расположение компонентов на форме, записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с расчетными значениями.
Добавить к классу TVector все дополнительные методы, включая конструкторы, методы арифметических операций без присвоения и метод преобразования типов ToStr.
Заменить в обработчике выбора пунктов компонента RadioGroup1 старый способ выполнения арифметических операций на новый, используя компоненты Edit1 и Edit2 для ввода векторных чисел в строковом формате, а компонент Edit3 – для вывода результатов с помощью метода ToStr.
Запустить программу на выполнение и записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с предыдущими значениями.
Создать новую форму в меню FileðNewðForm, сделав её главной формой проекта (ProjectðOptionsðFormsðMain form), и разместить на ней компоненты Image, Edit1 ¸ Edit4 и Button. В компоненте Image поместить изображение треугольника, а в компоненты Edit1 ¸ Edit3 записать координаты вершин треугольника, которые заданы в Таблице №2. В обработчике нажатия кнопки Button1 написать программу для нахождения площади треугольника, которая должна выводиться в компонент Edit4, используя формулы векторного произведения.
Запустить программу на выполнение и записать в отчет расположение компонентов на форме, обработчик нажатия кнопки Button1 и найденную площадь треугольника, предварительно сравнив полученный результат с расчетным значением.
Ответить на контрольный вопрос, записав в отчет разработанный метод, обработчик его использования и результат выполнения программы.
Исходные данные Таблица №2
-
№
А
В
С
№
А
В
С
1
(0, -2, 1)
(2, -3, 1)
(-3, -1, 1)
11
(1, -2, 1)
(1, 2, 4)
(1, 1, 6)
2
(1, -1, 2)
(1, 2, 3)
(1, 3, 4)
12
(1, -3, 2)
(4, -6, 2)
(-1, -5, 2)
3
(-1, 5, 0)
(-2, 6, 0)
(0, 3, 2)
13
(-1, -2, 2)
(0, 1, 2)
(0, -2, 6)
4
(1, -2, 3)
(2, -2, 1)
(4, -2, 1)
14
(0, -1, -2)
(-1, 1, -2)
(2, -1, 4)
5
(-1, 4, -3)
(-3, 1, -3)
(-2, 5, -3)
15
(-3, 1, 1)
(-2, -3, 4)
(-3, 3, -4)
6
(1, 3, 1)
(-1, 1, -2)
(1, 5, 2)
16
(-1, 5, -4)
(0, 5, 4)
(2, 5, 4)
7
(-1, 3, -5)
(-2, 1, -5)
(-1, 5, -2)
17
(1, -2, 1)
(1, 4, 2)
(1, -1, 4)
8
(2, 1, -1)
(4, -1, -1)
(-1, 0,-1)
18
(-3, -1, 1)
(-3, 5, 2)
(-3, -1, 4)
9
(2, -1, 4)
(5, -1, 1)
(-1, -3, 6)
19
(2, 1, -1)
(2, 7, 0)
(2, 6, 3)
10
(1, 2, 1)
(0, -1, 1)
(4, 1, 1)
20
(4, -6, 2)
(4, -1, 4)
(4, -6, 6)