В5 Модуль программы Скорость
Листинг В5. Модуль программы Скорость бега после внесения изменений unit vrun1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForml = class(TForm) Editl: TEdit;
Edit2: TEdit; Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Buttonl: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure EditlKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations } public
{ Public declarations } end;
var
Form1: TForm1;
implementation
{$R *.dfm)
// нажатие кнопки Вычислить
procedure TForm1.ButtonlClick(Sender: TObject);
var
dist : integer; // дистанция, метров
t: real; // время как дробное число
min : integer; // время, минуты
sek : integer; // время, секунды
v: real; // скорость
begin
// получить исходные данные из полей ввода
dist := StrToInt(Editl.Text);
t := StrToFloat(Edit2.Text);
// предварительные преобразования
min := Trunc(t);
// кол-во минут — это целая часть числа t
sek := Trunc(t*100) mod 100; // кол-во секунд — это дробная часть
// числа t
// вычисление
v := (dist/1000) / ( (min*60 + sek)/3600);
// вывод результата
label4.Caption := 'Дистанция: '+ Editl.Text +
' м' + #13 + 'Время: ' + IntToStr(min) +
' мин ' + IntToStr(sek) + ' сек ' + #13 +
'Скорость: ' + FloatToStrF(v,ffFixed,4,2) + ' км/час';
end;
// нажатие кнопки Завершить
procedure TForml.Button2Click(Sender: TObject);
begin
Form1.Close; end;
// нажатие клавиши в поле Дистанция
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
// Key — символ, соответствующий нажатой клавише.
// Если символ недопустимый, то процедура заменяет его
// на символ с кодом 0. В результате этого символ в поле
// редактирования не появляется, и у пользователя создается
// впечатление, что программа не реагирует на нажатие некоторых
// клавиш.
case Key of
'0'..'9': ; // цифра
#8 : ; // клавиша <Back Space>
#13 : Edit2.SetFocus ; // клавиша <Enter>
// остальные символы — запрещены
else Key :=Chr(0);
// символ не отображать
end;
end;
end.
После внесения изменений проект следует сохранить. Для этого нужно из меню File выбрать команду Save all.