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 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 1)
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

 

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