Вопрос задан 18.06.2023 в 20:43. Предмет Информатика. Спрашивает Хмара Валера.

Program cd6059e5; var a, b, c, d, x, xx, f: real;begin Write('а:'); read(a); write('b:') ;

read(b); write('c:') ; read(c); d:=b*b-4*a*c; f:=Sqrt(d); writeln('D=', d); writeln('√D=', f); if d > 0 then begin x:=-b-f/2*a; xx:=-b+f/2*a; writeln('x1=', x); writeln('x2=', xx); end; if d=0 then begin x:=-b/2*a; end; if d < 0 then begin Writeln('Корней нет'); end;end.написал программу на паскале где должно решатся квадратное уровнения но когда дискриминант ниже нуля то происходит ошибка (в паскаль N-IDE) ​
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Гречанник Влад.

Программа:

Pascal:

program cd6059e5;

var a, b, c, d, x, xx, f: real;

begin

 write('а = '); read(a);

 write('b = '); read(b);

 write('c = '); read(c);

 d := b*b - 4*a*c;

 f := sqrt(d);

 writeln('D = ', d);

 

 if d > 0 then begin

   writeln('√D = ', f);

   x := (-b-f)/(2*a);

   xx := (-b+f)/(2*a);

   writeln('x1 = ', x);

   writeln('x2 = ', xx);

 end;

 if d = 0 then x := -b/(2*a);

 if d < 0 then writeln('Корней нет.');

end.

Исправил вашу программу. Корни неверно вычислялись, пару других моментов поправил.

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

В представленной программе на Pascal решается квадратное уравнение. В начале программы объявляются переменные a, b, c, d, x, xx, f как вещественные числа. Затем программа просит пользователя ввести значения a, b и c.

Далее вычисляется значение дискриминанта d по формуле d = b^2 - 4ac. Значение дискриминанта выводится на экран с помощью команды writeln.

Затем происходит вычисление корня из дискриминанта с помощью функции sqrt. Полученное значение присваивается переменной f. Значение корня выводится на экран с помощью команды writeln.

Далее программа проверяет условие, если дискриминант больше нуля, то происходит вычисление корней и вывод их значений на экран с помощью команд writeln.

Если дискриминант равен нулю, то происходит вычисление одного корня и его значение выводится на экран с помощью команды writeln.

Если дискриминант меньше нуля, то выводится сообщение "Корней нет" с помощью команды writeln.

Ошибка, которую вы испытываете при выполнении программы, вызвана неправильным использованием скобок в некоторых выражениях. Вместо "/2*a" и "/2*a" в формулах для вычисления корней, следует использовать "/(2*a)" для правильного выполнения математических операций. Исправленный код приведен ниже:

var a, b, c, d, x, xx, f: real; begin write('a:'); read(a); write('b:'); read(b); write('c:'); read(c); d := b*b - 4*a*c; f := sqrt(d); writeln('d=', d); writeln('√d=', f); if d > 0 then begin x := (-b-f)/(2*a); xx := (-b+f)/(2*a); writeln('x1=', x); writeln('x2=', xx); end; if d = 0 then begin x := -b/(2*a); writeln('x=', x); end; if d < 0 then begin writeln('Корней нет'); end; end.

После внесения исправлений, программа должна корректно решать квадратное уравнение для всех возможных значений дискриминанта.

0 0

Похожие вопросы

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

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

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