пятница, 20 февраля 2015 г.

Калькулятор вычисления корней квадратных уравнений в Delphi

Очередной, но совершенно другой калькулятор, разработанный в Delphi 7.0. Исходники калькулятора находятся в конце статьи.

Постановка задачи


Разработать калькулятор, решающий квадратные уравнения (в действительных или комплексных числах). Вычисление корней проводится в форме, заданной пользователем.

Схема алгоритма решения задачи


Для решения поставленной задачи нам необходимо:

  1. Если пользователем введены значения, считать их.
  2. Найти дискриминант.
  3. Если дискриминант >= нулю, то найти действительные корни, если же меньше нуля, предложить пользователю вычислить мнимые корни.
  4. Вывести результат.
Покажем на общей схеме принцип работы калькулятора:

Калькулятор вычисления корней квадратных уравнений в Delphi

Описание используемых компонентов


Для написания программы на форму были помещены такие компоненты среды разработки Delphi:
  • поля Edit (для ввода пользовательских значений и вывода полученных результатов);
  • кнопки Button;
  • поле Memo (для вывода логов работы программы);
  • Label (Надписи, с помощью которых подпишем поля).
На событие создания формы OnCreate в процедуре TForm1.OnCreate зададим создание файла Korni.log, который будет создаваться в корневом каталоге диска С.

При нажатии кнопки Button1 вызывается процедура TForm1.Button1Click, с помощью которой считываются данные, введенные пользователем, и находится дискриминант. Затем полученное значение сравнивается с нулем. Если оно больше или равно нулю, то находятся корни х1 и х2, если же меньше, на форме появляется надпись, сообщающая, что действительных корней нет, и кнопка Button2, предлагающая вычислить мнимые корни.

Изначально в свойстве этой кнопки и надписи указано, что они невидимы. При нажатии на кнопку активируется процедура TForm1.Button2Click, в которой вычисляются корни в комплексной форме. Если данные были неправильно введены пользователем, то на экран и в файл логов работы выводится сообщение об ошибке.

При нажатии кнопки Button3 очищаются поля ввода и вывода.

При нажатии кнопки Button4 выводятся на экран логи работы программы. Они включают в себя введенные пользователем данные, результат операций с этими данными, а так же сообщения об ошибках.

При нажатии кнопки Button5 вызывается справочная система калькулятора. Справочная система разработана с помощью утилиты Hcw.exe. Для этого сначала справочный материал был написан в Microsoft Word, расставлены ссылки в каждом пункте справки, информация сохранена в rtf формате. Далее, с помощью вышеназванной утилиты была создана справочная система и оглавление к ней. Для связи справочной системы с нашим приложением было введено название help-файла в меню Borland Delphi «Проект» → «Параметры» → «Приложение» → «Файл справки».

Пример результатов работы программы


Например, вычислим корни уравнения

Калькулятор вычисления корней квадратных уравнений в Delphi

Получим такие результаты:

Калькулятор вычисления корней квадратных уравнений в Delphi

Если же мы возьмем уравнение

Калькулятор вычисления корней квадратных уравнений в Delphi

то получим:

Калькулятор вычисления корней квадратных уравнений в Delphi

При нажатии на кнопку «Вычислить мнимые корни» получим:

Калькулятор вычисления корней квадратных уравнений в Delphi

При неправильном вводе данных мы увидим такое сообщение:

Калькулятор вычисления корней квадратных уравнений в Delphi

При нажатии на кнопку «Логи» мы увидим логи работы нашей программы:

Калькулятор вычисления корней квадратных уравнений в Delphi

Текст log-файла находится в приложении А, расположенном ниже. Также в конце статьи вы сможете найти ссылку на готовое приложение-калькулятор и на его исходники.

При нажатии на кнопку помощи мы увидим справочное руководство:

Калькулятор вычисления корней квадратных уравнений в Delphi

При выборе необходимого нам пункта можно будет почитать интересующий материал.

Инструкция пользователю программы


Вычисление корней квадратного уравнения:

Для вычисления корней квадратного уравнения нужно ввести значения коэффициентов a, b, c и нажать кнопку «Вычислить». Если коэффициент равен нулю, то нужно в соответствующее поле ввести «0». Если какое-то из полей не будет заполнено, выведется сообщение об ошибке.
Если уравнение имеет действительные корни, то они будут выведены в полях х1 и х2. Иначе пользователю будет предложено найти мнимые корни. На форме появится кнопка «Вычислить мнимые корни». При нажатии на нее появится искомый результат.

Сохранение данных в файл:

Программа автоматически сохраняет все входные и выходные данные в файл. Для просмотра этого файла нужно нажать кнопку «Логи».

Приложение А


Вычисление действительных корней
   a       b      c
    3    -4     1
x1=   1.00   x2=   0.33
Вычисление мнимых корней
   a       b      c
    3    -4     5
x1,2=(   4.00+-   6.63*i)/   6.00
Неправильно введены данные

Вы можете скачать листинг программы-калькулятора, предназначенной для решения квадратных уравнений, и готовое приложение:

.

Также вы можете ознакомиться с программированием калькулятора дробных чисел, калькулятора дат и калькулятора времени в среде Делфи.

Комментариев нет:

Отправить комментарий