108
если а
О то
при а
0
D: = b*b - 4*а*с
D = b² - 4
а
с
если D > = 0 то
при D >= 0
х1: = (-b +
D
)/(2*a)
х1 = (-b +
D
)/(2
a)
х2: = (-b -
D
)/(2*a)
х2 = (-b -
D
)/(2
a)
все
инеc а = 0 то
при а = 0
если b
0
при b
0
х 1: = -c/b
x
l
= -c/b
все
кон
Результаты выполнения алгоритма приведены справа. Можно заметить, что результаты выполнения
совпадают с описанием выбранного метода решения с помощью дискриминанта. Это позволяет
утверждать, что алгоритм - правильный.
Алгоритм содержит ошибки, если можно указать допустимые исходные данные, при которых либо
будут получены неправильные результаты, либо результаты не будут получены вовсе. Использование
алгоритмов, содержащих ошибки, приводит к созданию программ, также содержащих ошибки.
Алгоритм считается правильным, если он дает правильные результаты для любых допустимых
исходных данных. Правильность алгоритмов решения прикладных задач и наличие в них ошибок
можно проверять двумя основными способами.
Первый способ - проверка основных этапов построения алгоритма:
задача
постановка
метод
алгоритм
Второй способ - анализ результатов выполнения алгоритмов и их сравнение с выбранными методами
решения и постановкой задачи:
задача
постановка
метод
алгоритм
Приведем пример построения алгоритма с одновременным анализом его правильности.
Задача: Определить периметр треугольника, заданного на плоскости координатами вершин.
X
С
,У
С
X
А
,У
А
Xв,Ув
Постановка задачи
Определение периметра треугольника, заданного на плоскости.
Дано: А = (x
А
, y
А
)
В
=
(x
В
, y
В
) - координаты вершин треугольника
С = (x
С
,y
С
)
Треб.: Р - периметр
|