Вопрос Не могу разобраться в чём проблема в pascal

Регистрация
16 Дек 2013
Сообщения
75
Репутация
0
Спасибо
0
Монет
0
Program doza;

var a,b,c,x1,x2,d:real;

begin

writeln ('a,b,c');

readln (a,b,c);

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

if (d>0) then writeln ('2 корня');

x1:=-b+sqrt (d);

x2:=-b-sqrt (d);

writeln ('x1=',x1);

writeln ('x2=',x2);

end;

begin

if (d=0) then writeln ('1 корень');

x1:=-b/2*a

end.

292837881_611adc703e92d1b9143fb4746978a2d4_800.png

 
От первого if и до конца кода:

if d>0 then begin
writeln('2 корня');
x1:=(-b-sqrt(d))/(2*a);
x2:=(-b+sqrt(d))/(2*a);
writeln('x1=',x1);
writeln('x2=',x2)
end else if d=0 then begin
writeln('1 корень');
x1:=-b/(2*a);
writeln('x1=',x1)
end else
writeln('корней нет')
end.

P.S. А на уроках математики ты 'sin (' пишешь - с пробелом между именем функции и круглой скобкой?
 
И что? Не знаешь формулу для корней квадратного уравнения? И ещё лезешь в программирование!!!

47691088_e137d0b7fa86a1339ae27f32305b7590_800.png

 
при Д=0 2 одинаковых корня!
if (d>=0) then writeln ('2 корня');
// x1:=-b+sqrt (d); чушь!!!
// x2:=-b-sqrt (d);
writeln ('x1=',x1);
writeln ('x2=',x2);
end;
 
Назад
Сверху