КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Программа работы1. Создать новый проект в меню FileðNewðVCL Forms Application, добавить к нему новый модуль (FileðNewðUnit) и сохранить все файлы в папке с именем ‘…\Лабораторная работа № 11’. 2. В заголовочной части второго модуля объявить класса TVector, а в исполняемом разделе модуля с расширением cpp определить все его методы в соответствии с ADT – форматом. 3. Создать на форме компоненты RadioGroup1 и Edit1 ¸ Edit6. Рис. 4. Примерное расположение компонентов на форме 4. В обработчике выбора пунктов компонента RadioGroup1 объявить две объектных переменных с типом TVector, создав объекты с исходными данными, приведенными в Таблице №1, предусмотреть выполнение всех арифметических операций с присвоением в зависимости от выбранного пункта в компоненте RadioGroup1, используя оператор switch, и вывести значения координат результирующего вектора в компоненты Edit3 ¸ Edit5, а результат скалярного произведения векторов в компонент Edit6. Исходные данные Таблица №1
5. Запустить программу на выполнение и записать в отчет объявленный класс и все его методы, зарисовать расположение компонентов на форме, записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с расчетными значениями. 6. Добавить к классу TVector все дополнительные методы, включая конструкторы, методы арифметических операций без присвоения и метод преобразования типов ToStr. 7. Заменить в обработчике выбора пунктов компонента RadioGroup1 старый способ выполнения арифметических операций на новый, используя компоненты Edit1 и Edit2 для ввода векторных чисел в строковом формате, а компонент Edit3 – для вывода результатов с помощью метода ToStr. 8. Запустить программу на выполнение и записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с предыдущими значениями. 9. Создать новую форму в меню FileðNewðForm, сделав её главной формой проекта (ProjectðOptionsðFormsðMain form), и разместить на ней компоненты Image, Edit1 ¸ Edit4 и Button. В компоненте Image поместить изображение треугольника, а в компоненты Edit1 ¸ Edit3 записать координаты вершин треугольника, которые заданы в Таблице №2. 10. Запустить программу на выполнение и записать в отчет расположение компонентов на форме, обработчик нажатия кнопки Button1 и найденную площадь треугольника, предварительно сравнив полученный результат с расчетным значением. 11. Ответить на контрольный вопрос, записав в отчет разработанный метод, обработчик его использования и результат выполнения программы. Исходные данные Таблица №2
Контрольные вопросы 1. Записать и протестировать в программе оператор унарного минуса. 2. Записать и протестировать в программе оператор инкремента. 3. Записать и протестировать в программе оператор декремента. 4. Записать и протестировать в программе оператор присвоения. 5. Записать и протестировать в программе оператор равно. 6. Записать и протестировать в программе оператор не равно. 7. Записать и протестировать в программе оператор сложения двух векторных чисел, если первый операнд передается ему в формате AnsiString, а второй – в формате TVector. 8. Записать и протестировать в программе оператор вычитания двух рациональных чисел, если первый операнд передается ему в формате TVector, а второй – в формате AnsiString. 9. Записать и протестировать в программе оператор векторного произведения двух векторных чисел, если первый и второй операнд передается ему в формате AnsiString. 10. Записать и протестировать в программе оператор умножения действительного числа на векторное число. 11. Написать и протестировать программу, которая находит площадь параллелограмма, заданного координатами трех вершин О, A и В. 12. Написать и протестировать программу, которая находит периметр треугольника, заданного координатами трех вершин А, B и C. 13. Написать и протестировать программу, которая находит периметр параллелограмма, заданного координатами трех вершин А, B и C. 14. Добавить к классу TVector метод, который находил бы угол между двумя векторами j по формуле: cos(j) = a×b/|a|×|b|. 15. Написать и протестировать программу, которая находит объем параллелепипеда, заданного координатами четырех вершин (О, A, В, С). Для этого использовать формулу смешанного произведения векторов: . 16. Написать программу, которая находит площадь поверхности параллелепипеда, заданного координатами четырех вершин (О, A, В, С). 17. Записать и протестировать в программе метод проверки двух векторов на коллинеарность. 18. Записать и протестировать в программе метод проверки трех векторов на компланарность. 19. Записать и протестировать в программе метод нахождения проекции вектора a на направление вектора b. 20. Записать и протестировать в программе метод нахождения двойного векторного произведения.
|