Вопрос задан 09.09.2026 в 13:23.
Предмет Информатика.
Спрашивает Горбукова Ариана.
Помогите пожалуйста! Делфи. Выдаёт ошибку в конце. (else)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
edt1: TEdit;
Edit1: TEdit;
Edit2: TEdit;
Label4: TLabel;
Edit3: TEdit;
lbl1: TLabel;
edt2: TEdit;
lbl2: TLabel;
edt3: TEdit;
btn1: TButton;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
a,b,c,d,x1,x2:Double;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
begin
a:=StrToFloat(edt1.Text);
b:=StrToFloat(Edit1.Text);
c:=StrToFloat(Edit2.Text);
d:=Sqr(b)-4*a*c;
Edit3.Text:=FloatToStr(d);
if d>=0 then
x1:=(-b-sqrt(d))/2*a;
x2:=(-b+sqrt(d))/2*a;
edt2.Text:=FloatToStr(x1);
edt3.Text:=FloatToStr(x2);
else ShowMessage('Корней нет');
end;
end.
Ответы на вопрос
Отвечает Смирнов Евгений.
Ошибка из-за конструкции if ... then ... else. После then у вас выполняется только первая строка, а остальные строки уже «ломают» связь с else. Нужно взять несколько команд в begin ... end.
Правильно так:
if d >= 0 then
begin
d := Sqr(b) - 4 * a * c;
Edit3.Text := FloatToStr(d);
x1 := (-b - Sqrt(d)) / (2 * a);
x2 := (-b + Sqrt(d)) / (2 * a);
edt2.Text := FloatToStr(x1);
edt3.Text := FloatToStr(x2);
end
else
ShowMessage('Корней нет');
Ещё важная ошибка была в формуле: нужно делить на всё \(2a\), поэтому скобки обязательны: \(\frac{-b \pm \sqrt d}{2a}\).
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

