Как сделать корень в блок схеме

Обновлено: 07.07.2024

program bikv;

var a,b,c,d,x1,x2,x3,x4,t1,t2: real ;

writeln( 'Программа для решения биквадратного уравнения вида ax^4+bx^2+c' );

write( ' введите a= ' );

write( ' введите b= ' );

write( ' введите c= ' );

if d 0 then writeln( 'Уравнение не имеет действительных корней' )

if (t1 0 ) then writeln( 'x1 и x2 не действительные корни' )

if t1> 0 then x1:=sqrt(t1);

if (t2 0 ) then writeln( 'x3 и x4 не действительные корни' )


e всех действительных корней уравнения f(x) = 0 заданным методом. Метод решения и исходные данные выбрать из таблиц 1 и 2 в соответствии с номером варианта.

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

Метод половинного деления

x - b / (a + sin x), где а = 1,6; 1,7; 1,8; b = 5; 5,1; e=10 -3

1. Отделение корней уравнения

Решение уравнения приближенными методами состоит из двух этапов:

- отделение корней, т.е. отыскание достаточно малых областей, в каждой из которых заключен один и только один корень уравнения;

- вычисление корней с заданной погрешностью.

Для отделения корней следует воспользоваться правилом: если значения непрерывной функции f(x) на концах некоторого отрезка имеют разные знаки, то внутри отрезка содержится по меньшей мере один корень уравнения f(x) = 0.

Рис.1 входные параметры (X0,XK,H,E)






Отделить корни можно графическим способом, построив график функции f(x) и выделив все участки, на которых содержится только один корень.

Однако, если уравнение имеет несколько корней, целесообразнее этот этап проводить с помощью ЭВМ. Отделение корней при этом заключается в вычислении значений функции f(x) на интервале [x0 ; xk ], содержащем все корни, с некоторым шагом h (рис. 1). Вычисление значений функции происходит до первой смены ее знака, за интервал изоляции корня [a;b] принимается последний участок длиной h, на концах которого функция имеет разные знаки. Далее осуществляется уточнение корня заданным методом, и процесс вычисления значений функции до смены ее знака повторяется. Чтобы приведенный на рис. 1 алгоритм вычислял все корни заданного уравнения, необходимо предварительно провести графическое исследование функции f(x) с целью определения интервала [x0; xk ], содержащего все корни, и значения шага h, величина которого должна быть меньше минимального расстояния между корнями уравнения.

Возможна ситуация, когда значение функции y в очередной точке x равно нулю (блок 6). Это означает, что x - корень уравнения, этап уточнения корня (блоки 7,8) при этом не выполняется, результаты выводятся на печать, и процесс поиска корней продолжается.

При изложении методов уточнения корней уравнения будем считать, что нам известен отрезок [a; b], внутри которого существует только один корень уравнения (назовем его x * ).

Блок-схемой называется наглядное графическое изображение алгоритма.

В блок-схеме отдельные этапы алгоритма изображают при помощи различных геометрических фигур – блоков.

Последовательность выполнения этапов указываются при помощи стрелок, соединяющих эти фигуры. Блоки сопровождаются надписями.

Типичные действия алгоритма изображаются следующими геометрическими фигурами:

Блок начала (конца) алгоритма

Блок ввода-вывода данных

и список переменных вводимых (выводимых).

Блок решения (арифметический)

Надпись: операция или группа операций.

Надпись: логическое условие.

2.3. Составной оператор

Это группа операторов, отделенных друг от друга точкой с запятой, начинающихся с открывающей фигурной скобки < и заканчивающихся закрывающейся фигурной скобкой >.

Транслятор воспринимает составной оператор как один оператор.

2.4. Операторы ветвления

Алгоритмы разветвленной структуры применяются, когда в зависимости от некоторого условия необходимо выполнить либо одно, либо другое действие.

Условный оператор, соответствующий приведенной блок-схеме, имеет вид:

if (выражение) оператор_1;

Вычисляется выражение. Если оно не равно нулю, т.е. имеет значение true, выполняется оператор_1, в противном случае (выражение равно нулю, т.е. false) – оператор_2.

Если в зависимости от некоторого условия выполняется некоторое действие, а в противном случае ничего не происходит, то алгоритм имет вид:

Условный оператор в этом случаеимет конструкцию:

if (выражение) оператор;

Здесь оператор либо выполняется, либо пропускается, в зависимости от значения выражения.

Если в какой-либо ветви условного процесса требуется выполнить несколько операторов, следует использовать составной оператор.

2.5. Примеры программ

Задача 2. Известны коэффициенты а, b и с квадратного уравнения ax2+bx+c=0. Вычислить корни квадратного уравнения.

Читайте также: