Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2010, 21:28   #1
DomiNik
Пользователь
 
Регистрация: 17.05.2010
Сообщений: 26
Восклицание Модули в Dekphi

Есть программа, но не могу понять из-зи чего не хочет работать именно одна кнопка, которая подсчитывает площадь окружности...Будьте добры, проверьте, и подскажите в чем ошибка!!! Буду оччень признателен!!

Вот код программы!

Модуль:
unit Sq;

interface

Function Okr(a:real):real;
function Pryam(a,b:real):real;
function Treug(a,b:real):real;



implementation
function Okr(a:real):real;
begin
Okr:=pi*sqr(a);
end;
function Pryam(a,b:real):real;
begin
Pryam:=a*b;
end;
function Treug(a,b:real):real;
begin
Treug:=a*b/2;
end;
end.

Основная программа:
unit lab3;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Edit1: TEdit;
Edit2: TEdit;
Button4: TButton;
Button5: TButton;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
i:integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
i:=1;
Edit1.Visible:=true;
Edit2.Visible:=false;
Label3.Caption:='Ââåäèòå r';
Label4.Caption:='';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
i:=2;
Edit1.Visible:=true;
Edit2.Visible:=true;
Label3.Caption:='Ââåäèòå a';
Label4.Caption:='Ââåäèòå b';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
i:=3;
Label3.Caption:='Ââåäèòå a';
Label4.caption:='Ââåäèòå h';
Edit2.Visible:=true;
Edit1.Visible:=true;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
Edit1.Clear;
Edit2.Clear;
label2.Caption:='';
end;

procedure TForm1.Button4Click(Sender: TObject);
var
a,a1,b,b1:real;
begin
a1:=StrToFloat(Edit1.text);
b1:=StrToFloat(Edit2.Text);
a:=a1;
b:=b1;
if i=1 then
label2.Caption:=FloatToStr(Okr(a1))
else if i=2 then
label2.Caption:=FloatToStr(Pryam(a1 ,b1))
else if i=3 then
label2.Caption:=FloatToStr(Treug(a1 ,b1));

end;

end.
DomiNik вне форума Ответить с цитированием
Старый 27.10.2010, 21:44   #2
WhiteSpirit
Пользователь
 
Регистрация: 28.05.2010
Сообщений: 82
По умолчанию

Какую ошибку пишет?
WhiteSpirit вне форума Ответить с цитированием
Старый 27.10.2010, 21:58   #3
DomiNik
Пользователь
 
Регистрация: 17.05.2010
Сообщений: 26
По умолчанию

Project2.exe reised exception class EconvertError with message""is not a valid floating point value. Process stoped..
DomiNik вне форума Ответить с цитированием
Старый 27.10.2010, 22:03   #4
WhiteSpirit
Пользователь
 
Регистрация: 28.05.2010
Сообщений: 82
По умолчанию

Видимо, при вычислении площади круга в Edit2 ничего не заносится, поэтому при попытке
Код:
b1:=StrToFloat(Edit2.Text);
и возникает ошибка.
Надо так:
Код:
procedure TForm1.Button4Click(Sender: TObject);
var
a,a1,b,b1:real;
begin
a1:=StrToFloat(Edit1.text);
if i > 1 then b1:=StrToFloat(Edit2.Text);
a:=a1;
b:=b1;
if i=1 then
label2.Caption:=FloatToStr(Okr(a1))
else if i=2 then
label2.Caption:=FloatToStr(Pryam(a1 ,b1))
else if i=3 then
label2.Caption:=FloatToStr(Treug(a1 ,b1));

end;
WhiteSpirit вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модули Наташок Паскаль, Turbo Pascal, PascalABC.NET 1 06.10.2010 16:26
Модули voron.kz Общие вопросы Delphi 4 20.02.2010 14:31
модули Largo Помощь студентам 0 03.01.2010 11:54
Модули. СИ. pif Помощь студентам 3 06.04.2009 01:00
Модули Sirega Помощь студентам 5 03.02.2009 22:35