IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> как расчитать дискрименант
ЛеММА 16
сообщение 15.04.2009 22:11
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Женский

Репутация: -  0  +


написала программу вроде правильно.Цифры вводятся, а начало расчета не выполняется.
Вот программа
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls,Form1.Show;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Button1: TButton;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
procedure FormCreate(Sender: TObject);

{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
A,B,C:Real;
X1,X2,D:Real;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
D:=SQR(B)-4*A*C;
begin if D<0 then Form1.showModal;
X1:=(-B+SQRT(D)/2*A);
X2:=(-B-SQRT(D)/2*A);
end;
begin
A:=strToFloat(Edit1.Text);
B:=strToFloat(Edit2.Text);
C:=strToFloat(Edit3.Text);
end;
begin
Panel1.Caption:=FloatToStr(X1);
Panel2.Caption:=FloatToStr(X2);
Panel3.Caption:=FloatToStr(D);
end;
end;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 15.04.2009 22:28
Сообщение #2


Гость






Чего ж правильно? Ты где научилась при создании формы (а произойдет это до того, как будут созданы все эти Edit-ы) присваивать что-то переменным из несуществующих элементов? На самом деле, у тебя работа происходит не со значениями из Edit-ов, а со значениями переменных A, B, C по умолчанию - то есть, с нулями.

Положи кнопку на форму, и повесь все на нее:

procedure TForm1.Button1Click(Sender: TObject);
begin
A:=strToFloat(Edit1.Text);
B:=strToFloat(Edit2.Text);
C:=strToFloat(Edit3.Text);

D:=SQR(B)-4*A*C;
Panel3.Caption:=FloatToStr(D);

if D < 0 then begin
Panel1.Caption := 'D < 0';
Panel2.Caption := 'D < 0';
end
else begin
X1:=(-B+SQRT(D)/2*A);
X2:=(-B-SQRT(D)/2*A);
Panel1.Caption:=FloatToStr(X1);
Panel2.Caption:=FloatToStr(X2);
end;
end;
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.06.2025 17:37
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"