 
        
        - •Лабораторная работа № 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) и сохранить все файлы в папке с именем ‘…\Лабораторная работа № 9’. 
- В заголовочной части второго модуля объявить класса TRational, а в исполняемом разделе модуля с расширением cpp определить все его методы в соответствии с ADT – форматом. 
- Создать на форме компоненты RadioGroup1 и Edit1 ¸ Edit4. 

Рис. 1. Примерное расположение компонентов на форме
- В обработчике выбора пунктов компонента RadioGroup1 объявить две объектных переменных с типом TRational, создав объекты с исходными данными, приведенными в Таблице №1, предусмотреть выполнение всех арифметических операций с присвоением в зависимости от выбранного пункта в компоненте RadioGroup1, используя оператор switch, и вывести значения числителя и знаменателя первого операнда в компоненты Edit3 и Edit4. 
Таблица №1
Исходные данные
- 
	№ Варианта Число a Число b № Варианта Число a Число b 1 -4/-5 6/-7 11 2/-3 2/-7 2 -3/2 8/-5 12 -5/2 4/-9 3 -5/6 4/-3 13 -3/4 5/-8 4 9/4 -7/-8 14 -7/8 9/-5 5 -4/9 3/-4 15 -8/9 7/-3 6 -2/3 -9/7 16 -6/7 -2/3 7 -4/7 7/-3 17 -3/4 -8/-6 8 6/5 -4/-5 18 -9/2 -5/-6 9 -8/3 1/-3 19 -7/5 4/-3 10 -3/9 -5/-8 20 -9/3 -3/-7 
- Запустить программу на выполнение и записать в отчет объявленный класс и все его методы, зарисовать расположение компонентов на форме, записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с расчетными значениями. 
- Добавить к классу TRational все дополнительные методы, включая конструкторы, методы арифметических операций без присвоения и метод преобразования типов ToStr. 
- Заменить в обработчике выбора пунктов компонента RadioGroup1 старый способ выполнения арифметических операций на новый, используя компоненты Edit1 и Edit2 для ввода рациональных чисел в строковом формате, а компонент Edit3 – для вывода результатов с помощью метода ToStr. 
- Запустить программу на выполнение и записать обработчик выбора пунктов компонента RadioGroup1 и полученные результаты в виде таблицы, предварительно сравнив их с предыдущими значениями. 
- Ответить на контрольный вопрос, записав в отчет разработанный метод, обработчик его использования и результат выполнения программы. 
Контрольные вопросы
- Записать и протестировать в программе метод вывода рациональных чисел в нормализованном формате. 
- Записать и протестировать в программе метод вывода рациональных чисел в редуцированном формате. 
- Записать и протестировать в программе метод вывода рациональных чисел в смешанном формате. 
- Записать и протестировать в программе оператор унарного минуса. 
- Записать и протестировать в программе оператор инкремента. 
- Записать и протестировать в программе оператор декремента. 
- Записать и протестировать в программе оператор присвоения. 
- Записать и протестировать в программе оператор больше. 
- Записать и протестировать в программе оператор больше или равно. 
- Записать и протестировать в программе оператор меньше. 
- Записать и протестировать в программе оператор меньше или равно. 
- Записать и протестировать в программе оператор равно. 
- Записать и протестировать в программе оператор не равно. 
- Записать и протестировать в программе оператор умножения рационального числа на целое число. 
- Записать и протестировать в программе оператор умножения целого числа на рациональное число. 
- Записать и протестировать в программе оператор сложения двух рациональных чисел, если первый операнд передается ему в формате AnsiString, а второй – в формате TRational. 
- Записать и протестировать в программе оператор вычитания двух рациональных чисел, если первый операнд передается ему в формате TRational, а второй – в формате AnsiString. 
- Записать и протестировать в программе оператор деления двух рациональных чисел, если первый и второй операнд передается ему в формате AnsiString. 
- Записать и протестировать в программе метод, который находил бы решение следующего уравнения: 
b × x + a = 0,
где b и a – рациональные числа;
x – неизвестная в формате TRational.
- Записать и протестировать в программе метод возведения рационального числа в целую степень. 
- Записать и протестировать в программе метод нахождения гиперболической функции для рационального числа. 
