Вопрос задан 04.03.2021 в 07:32. Предмет Информатика. Спрашивает Смирнова Елизавета.

Var x, y, z:real; begin x:= StrToFloat(Edit1.Text); y:= StrToFloat(Edit2.Text); if

ComboBox1.Text='Додавання'=true Then z:=x+y else if ComboBox1.Text='Віднімання'=true Then begin z:=x-y end; if ComboBox1.Text='Ділення' Then begin z:=x/y; if y=0 Then ShowMessage ='Вираз значень не має' Label2.Caption:=FloatToStr(z); end; end; end. в чем ошибка
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Голиков Дмитрий.
Var x, y, z:real;
begin
x:= StrToFloat(Edit1.Text);
y:= StrToFloat(Edit2.Text);
if ComboBox1.Text='Додавання' Then z:=x+y;
if ComboBox1.Text='Віднімання' Then z:=x-y;
if (ComboBox1.Text='Ділення')and(y<>0) Then z:=x/y;
if 
(ComboBox1.Text='Ділення')and( y=0)
 Then ShowMessage ='Вираз значень не має'
 else Label2.Caption:=FloatToStr(z);
end;

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

В представленном коде есть несколько ошибок:

  1. Необходимо использовать операторы сравнения (=) вместо присваивания (:=) в условных операторах. Например, вместо ComboBox1.Text = 'Додавання' = true нужно использовать ComboBox1.Text = 'Додавання'.

  2. У вас пропущено ключевое слово then перед блоком кода внутри оператора if.

  3. У вас пропущена закрывающая скобка после оператора end в блоке кода оператора if ComboBox1.Text='Ділення' Then begin.

  4. Ошибка синтаксиса в строке ShowMessage ='Вираз значень не має'. Для отображения сообщения с текстом вы должны использовать вызов функции ShowMessage('Вираз значень не має').

  5. Нет точки с запятой после вызова функции ShowMessage('Вираз значень не має'). Точка с запятой нужна для завершения оператора.

Ниже приведен исправленный код:

pascal
var x, y, z: Real; begin x := StrToFloat(Edit1.Text); y := StrToFloat(Edit2.Text); if ComboBox1.Text = 'Додавання' then z := x + y else if ComboBox1.Text = 'Віднімання' then z := x - y else if ComboBox1.Text = 'Ділення' then begin if y = 0 then ShowMessage('Вираз значень не має') else z := x / y; end; Label2.Caption := FloatToStr(z); end.

Обратите внимание, что в исправленном коде я добавил проверку деления на ноль перед вычислением значения z. Если y равно нулю, то отображается сообщение об ошибке.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос