Предмет: Информатика,
автор: ryhkp2
составить словесный,графический алгоритмы и программу x:=b2(в квадрате)-4ас
Ответы
Автор ответа:
0
Словесный:
получим значения a, b и c, вычислим дискриминант по формуле D := b * b - 4 * a * c, Вычислим корни по формуле X := (-1 * b + sqrt(D) )/ 2 * a
Блок-схема:
(НАЧАЛО)
/Ввод a/
/Ввод b/
/Ввод c/
[D := sqr(b) - 4 * a * c]
[X := (-1 * b + sqrt(b)) / 2 * a]
/Вывод X/
[X := (-1 * b - sqrt(b)) / 2 * a]
/Вывод X/
(КОНЕЦ)
Надеюсь в блок-схеме разберешься какие скобки какую фигуру обозначают... В этих алгоритмах я брал только случаи, когда D строго больше нуля. Ты можешь дополнительно добавить ветвление после нахождения D и добавить все условия. Я просто на этом окне никак это не сделаю. Программа будет с ветвлением.
Программа:
var
a, b, c, D, X: real;
begin
write('Введите A: ');
read(a);
write('Введите B: ');
read(b);
write('Введите C: ');
read(c);
D := sqr(b) - 4 * a * c;
if D > 0 then
begin
X := (-1 * b + sqrt(D)) / 2 * a;
writeln('X1 = ', X);
X := (-1 * b - sqrt(D)) / 2 * a;
writeln('X2 = ', X);
end else if D = 0 then
begin
X := (-1 * b + sqrt(D)) / 2 * a;
write('X = ', X);
end else write('Корней нет!');
end.
(Протестировано, работает!)
получим значения a, b и c, вычислим дискриминант по формуле D := b * b - 4 * a * c, Вычислим корни по формуле X := (-1 * b + sqrt(D) )/ 2 * a
Блок-схема:
(НАЧАЛО)
/Ввод a/
/Ввод b/
/Ввод c/
[D := sqr(b) - 4 * a * c]
[X := (-1 * b + sqrt(b)) / 2 * a]
/Вывод X/
[X := (-1 * b - sqrt(b)) / 2 * a]
/Вывод X/
(КОНЕЦ)
Надеюсь в блок-схеме разберешься какие скобки какую фигуру обозначают... В этих алгоритмах я брал только случаи, когда D строго больше нуля. Ты можешь дополнительно добавить ветвление после нахождения D и добавить все условия. Я просто на этом окне никак это не сделаю. Программа будет с ветвлением.
Программа:
var
a, b, c, D, X: real;
begin
write('Введите A: ');
read(a);
write('Введите B: ');
read(b);
write('Введите C: ');
read(c);
D := sqr(b) - 4 * a * c;
if D > 0 then
begin
X := (-1 * b + sqrt(D)) / 2 * a;
writeln('X1 = ', X);
X := (-1 * b - sqrt(D)) / 2 * a;
writeln('X2 = ', X);
end else if D = 0 then
begin
X := (-1 * b + sqrt(D)) / 2 * a;
write('X = ', X);
end else write('Корней нет!');
end.
(Протестировано, работает!)
Похожие вопросы
Предмет: Физика,
автор: TIOMOrNTE
Предмет: Химия,
автор: lenusa3103
Предмет: Кыргыз тили,
автор: oyeongmin438
Предмет: Биология,
автор: Zhamilya1