![]() |
|
#10
|
||||
|
||||
![]() Код:
unit Beg; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Button1: TButton; Button2: TButton; //ПЕРВОЕ! ТУТ НЕ ОБЪЯВЛЕНА ПРОЦЕДУРА НАЖАТИЯ НА Button1 procedure Button1Click(Sender: TObject); // ТАК ЖЕ НЕ ЗАБЫВАЕМ ПРИВЯЗАТЬ ЭТУ ПРОЦЕДУРУ К КНОПКЕ procedure Button1ContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean); procedure Button2Click(Sender: TObject); procedure Button2DragDrop(Sender, Source: TObject; X, Y: Integer); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} // нажатие кнопки Вычислить //ВТОРОЕ. ПИШЕМ ПРАВИЛЬНО НАЗВАНИЯ ПРОЦЕДУР procedure TForm1.ButtonlClick'(Sender: TObject); // <--ХРЕНЬ procedure TForm1.Button1Click(Sender: TObject); // <-- ТАК НАДО var dist:integer;// дистанция, метров t:real;// время как дробное число min:integer;// время, минуты sek:integer;// время, секунды v:real; //скорость begin // получить исходные данные из полей ввода dist := StrToInt(Edit1.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 := 'Дистанция: '+ Edit1.Text + ' м' + #13 + 'Время: ' + IntToStr(min) + ' мин ' + IntToStr(sek) + ' сек ' + #13 + 'Скорость: ' + FloatToStrF(v,ffFixed,4,2) + ' км/час'; end; procedure TForm1.Button2Click(Sender: TObject); begin Form1.Close; // закрыть главное окно программы //НЕЗАБЫВАЕМ END end; end. Последний раз редактировалось Admin, Сегодня в 10:32. |