Корней квадратного уравнения

Разберите следующий пример составления схемы алгоритма.

Действительные корни квадратного уравнения ax2 + bx + c = 0, заданного коэффициентами a, b, c, вычисляются следующим образом (при условии, что а ¹ 0):

1. Прочитать коэффициенты a, b, c.

2. Вычислить дискриминант d = b2 – 4ac.

3. Если d 0, вычислить Корней квадратного уравнения и написать эти числа, иначе, если d = 0, вычислить Корней квадратного уравнения и написать это число, иначе написать «действительных корней нет».

По алгоритму выполняется соответствующая последовательность действий, составляющих процесс решения задачи:

1. Прочитать коэффициенты, вычислить d, проверить, что d 0 (и это так), вычислить х1, х2 и написать эти числа.

2. Прочитать коэффициенты, вычислить d, проверить, что d 0 (и это не так), проверить, что d = 0 (и это так), вычислить х и написать это число.

3. Прочитать коэффициенты, вычислить d, проверить, что d 0 (и это не так), проверить, что d = 0 (и это не так), и написать, что действительных корней нет.

Корней квадратного уравнения
Схема алгоритма приведена на рис. 1.2.

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

1) Знак завершения – обозначает начало и конец алгоритма.

2) Данные – обозначает ввод и вывод данных.

3) Процесс – обозначает вычислительные операции.

4) Решение – обозначает выбор одной из альтернатив.

Задание № 2. Алгоритм вычисления бесконечной суммы

1. Составить схему алгоритма вычисления бесконечной суммы

Корней квадратного уравнения

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

2. Данная задача относится к классу итерационных задач, так как число повторений операторов тела цикла заранее неизвестно. Очевидно, что здесь надо использовать цикл типа «ПОКА». Выход из итерационного цикла осуществляется в случае выполнения заданного условия Корней квадратного уравнения .

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

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

5. Решая эту задачу «в лоб» путем вычисления на каждом i-ом шаге частичной суммы

S:=S+((-1)**(i-1))*(x**i)/i,

мы получим очень неэффективный алгоритм, требующий выполнения большого числа операций. Гораздо лучше организовать вычисления следующим образом: если обозначить числитель какого-либо слагаемого буквой р, то у следующего слагаемого числитель будет равен –р*х (знак минус обеспечивает чередование знаков слагаемых), а само слагаемое m будет равно p/i, где i — номер слагаемого.

6. Учитывая последнее замечание, изобразите схему алгоритма. Она должна быть подобна той, что приведена на рис. 1.3.

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

В итерационных алгоритмах необходимо обеспечить обязательное достижение условия выхода из цикла (сходимость итерационного процесса). В противном случае произойдет «зацикливание» алгоритма, т.е. не будет выполняться основное свойство алгоритма — результативность.

2. Алгоритмы сортировки и поиска данных

Задание № 3. Алгоритм определения максимального элемента вектора

Формула корней квадратного уравнения


Похожие статьи.

Понравилась статья? Поделиться с друзьями: