Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Delphi.doc
Скачиваний:
67
Добавлен:
28.03.2015
Размер:
1.23 Mб
Скачать

4. Кодирование алгоритма

Приступим к обработке событий. Начнем с нажатия кнопки Вычислить. Активизируйте кнопку, с которой будем работать, затем перейдите к окнуObjectInspectorи переключитесь на вкладкуEvents(события). На ней вы обнаружите список всех возможных событий для активного компонента (в данном случае кнопки). Нас интересует событиеOnClick, возникающее при нажатии кнопки. Чтобы запрограммировать обработчик этого события, сделайте двойной щелчок мыши в поле значения. Появится окно редактора кода с заготовкой для нашего обработчика.

(Рис. 4.1) Окно редактора

Между procedureиbeginвпишите объявления переменных, а междуbeginиendалгоритм вычисления квадратного уравнения.

procedure TForm1.Button1Click(Sender: TObject);

var

a, b, c: Integer;

d, x1, x2: Real;

begin

a := StrToInt(Edit1.Text);

b := StrToInt(Edit2.Text);

c := StrToInt(Edit3.Text);

d := sqr(b) - 4 * a * c;

if d < 0 then begin

Edit4.Text := 'Корней нет';

Edit5.Text := 'Корней нет';

end else begin

x1 := (-b - sqrt(d)) / (2 * a);

Edit4.Text := FloatToStr(x1);

x2 := (-b + sqrt(d)) / (2 * a);

Edit5.Text := FloatToStr(x2);

end;

end;

При кодировании исходного кода Delphiбудет подсказывать, и помогать выбрать правильный метод или свойство из списка (функция завершения кода). Для активации списка просто введите имя объекта, напримерEdit1, и поставьте точку, для принудительного вывода списка нажмитеCtrl+пробел, для удаления, если он не нуженEsc.

(Рис. 4.2) Функция завершения кода

(Рис 4.3) Общий вид

5. Компиляция и исправление синтаксических ошибок

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

Ошибки, которые могут быть в программе, принято делить на три группы:

  • синтаксические;

  • ошибки времени выполнения;

  • алгоритмические.

Синтаксические ошибки, их также называют ошибками времени компиляции (Compile-time error), наиболее легко устранимы. Их обнаруживает компилятор, а программисту остается только внести изменения в текст программы и выполнить повторную компиляцию.

(Рис 5.1) Ошибка при компиляции

Наиболее часто встречающиеся синтаксические ошибки:

[Error] Unit1.pas(42): ':=' expected but '=' found- Вместо ожидаемого символа (или набора символов, например :=) в тексте программы встречается иное.

[Error] Unit1.pas(43): Missing operator or semicolon – пропущена точка с запятой - ;

[Error] Unit1.pas(49): Undeclared identifier: 'x' – Не объявленный идентификатор. Проверьте правильность имени идентификатора. Возможно вы пропустили какой-нибудь символ напримерx1.

[Error] Unit1.pas(57): ';' expected but '.'found– Неправильно составлены блоки заканчивающиеся наend. Часто ошибка встречается в циклах.

[Error] Unit1.pas(51): ')' expected but ';' found – Пропущена закрывающаяся скобка. Ошибка встречается при вызове методов, процедур или функций с параметрами. Внимательно проверьте количество открывающихся и закрывающихся скобок должно быть одинаковым.