Создание приложения вещественного деления в среде Delphi

2



Кафедра: автоматика и инф. технологии





















Лабораторная работа

На тему: 

"Создание приложения вещественного деления в среде Delphi".



























Екатеринбург, 2008


Задание 1. Создайте приложение, реализующее ввод двух целых чисел, по щелчку на кнопке с символом "=" вычисляющее результат операции вещественного деления и выводящее значение результата на экран.

Решение:

Запустите Delphi и создайте новый проект (см. лаб. раб. №1). В окне Save As создайте новую папку для файлов проекта, папку назовите "Вещественное деление". Затем откройте созданную папку и задайте в поле Имя Файла имя main и щелкнете по кнопке Сохранить. После сохранения файла модуля main. pas откроется окно сохранения проекта Save Project As, в котором следует задать имя файла проекта Delenie, а затем нажать кнопку Сохранить.

1. Измените свойства формы. Измените надпись в заголовке формы с помощью Инспектора объектов в свойстве Caption задайте новое значение "Вещественное деление двух целых чисел".

2. Разместите на форме компоненты Edit1, 2, 3, Label1, 2, 3, 4 и Button1, как показано на рис.2. Удалите текст Edit1, 2, 3 из соответствующих компонентов (воспользуйтесь свойством Text).

3. Задайте свойство Caption компонента Label1 значение "/", компонента Label2 значение "Делимое", для Label3 - "Делитель", для Label4 - "Частное", для Button1 - "=". Измените размеры символов и начертание соответствующих компонентов (см. лаб. раб. №1).





Делимое

Делитель

Частное

/

=

Вещественное деление двух целых чисел

Рис.2 Пример формы с компонентами



Чтобы приложение выполняло вычисление при щелчке мышью на кнопке с изображением "=", следует написать код обработки этого события.

4. Выбелите на форме компонент Button1, затем на странице события дважды щелкните мышью на пустом поле списка в событии OnClick. После этого курсор получит фокус в окне Редактора кода.

5. В раздел описания переменных следует ввести следующее:



Var

A, b: integer;

C: real;

В тело обработки события введите текст:

A: =StrToInt (Edit1. text);

B: =StrToInt (Edit2. text);

C: =A/B;

Edit3. text: =FloatToStrF (c, ffGeneral, 7,4); {преобразование вещественного числа в текстовую строку}



6. Запустите программу на выполнение при помощи команды RUN и проверти результат работы.

Задание 2. Дополните программу обработчика события таким образом, чтобы перед операцией деления выполнялась проверка делителя на равенство нулю. В случае равенства нулю вместо деления в окне Edit3 должно отображаться сообщение "На ноль делить нельзя".

Решение: для этого вставьте в процедуру обработчика события TForm1. Button1Click оператор if then else.

В тело процедуры введите дополнительный текст:



If b<>0 then begin

C: =A/B;

Edit3. text: =FloatToStrF (c, ffGeneral, 7,4);

End

Else

Edit3. text: =’На ноль делить нельзя! ’;



Сохраните изменения и запустите программу на выполнение.

Задание 3. Измените программу, чтобы сообщение "На ноль делить нельзя!" выводилось красным цветом.

Решение: для этого дополните код следующим оператором:



Edit3. Font. Color: =clRed; {установить красный цвет шрифта}



Откомпилируйте и запустите программу на выполнение. Проверьте ее работу, задавая различные варианты решения. Обратите внимание, что в случае ввода в качестве делителя нуля, сообщение выводится красным цветом. Причем цвет шрифта остается красным, даже если при следующей итерации делитель не был равен нулю. Чтобы восстановить черный цвет шрифта в окне Edit3, дополните код модуля перед оператором if then else следующей строкой:



Edit3. Font. Color: =clBlack; {установить черный цвет шрифта}



Сохраните изменения и проверти работу программы. Обратите внимание, что текст сообщения "На ноль делить нельзя" отображается не целиком.

Задание 4. Измените программу, чтобы ширина окна Edit3 изменялась в ходе выполнения программы.

Решение: для того, чтобы ширина окна Edit3 изменялась в ходе выполнения программы, отредактируйте код модуля дополнив его следующими операторами:



Edit3. Width: =130; {увеличение ширины компонента Edit3}

Edit3. Width: =81; {восстановить первоначальную ширину}



Сохраните изменения и запустите программу на выполнение.

Задание 5. Измените программу таким образом, чтобы текст "На ноль делить нельзя" выводился в отдельном окне.

Решение:

Чтобы не вносить изменения в проект, созданный в предыдущих заданиях, сохраните проект под новым именем Delenie2, а текст программы под именем - main2. pas.

Отредактируйте текст модуля main2 следующим образом:



Begin

A: = StrToInt (Edit1. text);

B: = StrToInt (Edit2. text);

Edit3. text: = ‘ ‘;

If b=0 then ShowMessage (‘ На ноль делить нельзя! ‘)

Else begin

C: = A/B;

Edit3. text: = FloatTo Str (C);

End;

End;