Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите с программкой [D7, XP]


igroman ©   (2008-02-18 16:30:00) 

Я пробывал сделать программу в делфи, книгу покупал в магазине, и попалась мне книжка очень плохая. Но программку я написать хчу поэтому у меня вышла вот так4ая вот фигня, вроде всё правильно но при попытке запустить мне выдаётся ошибки....

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Edit1: TEdit;
   Edit2: TEdit;
   Edit3: TEdit;
   Label1: TLabel;
   Label2: TLabel;
   Label3: TLabel;
   mmOutput: TMemo;
   Button1: TButton;
   Label5: TLabel;
   procedure Button1Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
X, Y, Z, D :Real;
begin

  If (Edit1.Text='')
  or (Edit2.Text='') or (Edit3.Text='') then Exit;
Try
X := StrToFloat(Trim(Edit1.Text));
except
ShowMessage('Îøèáî÷íàÿ çàïèñü ÷èñëà: '+Edit1.Text);
Edit1.SelectAll;
Exit;
end;

Try
Y := StrToFloat(Trim(Edit2.Text));
except
ShowMessage('Îøèáî÷íàÿ çàïèñü ÷èñëà: '+Edit2.Text);
Edit2.SelectAll;
Exit;
end;

Try
Z := StrToFloat(Trim(Edit3.Text));
except
ShowMessage('Îøèáî÷íàÿ çàïèñü ÷èñëà: '+Edit3.Text);
Edit3.SelectAll;
Exit;
end;

begin

D := (X + Y) * 2 + (Z * 8);
begin
Label5.Caption := ('D');
Edit1.Text := '';
Edit2.Text := '';
Edit3.Text := '';

end.


TIF   (2008-02-18 18:27:00) [1]


> Ой только вот вместо этих непонятных символов у меня русские
> слова....


это Юникод :-)


{RASkov}   (2008-02-18 18:11:00) [2]

> В конце программы нехватает трёх End'ов

Точно) ...Понаделал бегинов :)


{RASkov}   (2008-02-18 18:09:00) [3]

> [0] igroman ©   (18.02.08 16:30)

procedure TForm1.Button1Click(Sender: TObject);
function GetValue(Ed: TEdit): Double;
begin
  try Result:=StrToFloat(Ed.Text);
  except
    Ed.SetFocus;
    raise Exception.Create('Ошибочная запись числа: '+Ed.Text);
  end;
end;
var X, Y, Z, D: Double;
begin
 X:=GetValue(Edit1);
 Y:=GetValue(Edit2);
 Z:=GetValue(Edit3);
 D := (X + Y) * 2 + (Z * 8);
 Label1.Caption:=FloatToStr(D);
end;

Запускать желательно не из под делфи... из-за галки "Stop on Delphi Exceptions"


icWasya   (2008-02-18 18:06:00) [4]

Ошибка не при запуске а при компиляции

В конце программы нехватает трёх End'ов


saNat   (2008-02-18 16:39:00) [5]

Хм... Генератор случайного кода? Выложите весь код, а лучше конкретно ошибку и код ее вызывающий.


igroman   (2008-02-18 16:32:00) [6]

Ой только вот вместо этих непонятных символов у меня русские слова....


Наверх

Титульная страница Поиск, карта сайта Написать письмо