Реферат: Метод пошаговой детализации в программировании
При n>1 функция является монотонно возрастающей, значение аргумента x можно определить с помощью метода половинного деления. В чем заключается это метод?
1. Находим отрезок [x1, x2], который удовлетворяет условию: f(x1)<=y<=f(x2).
2. Делим полученный отрезок пополам: xt=(x1+x2)/2 и определеяем в какой половине отрезка находится x. Для этого сравниваем два значения: f(x1) и y.
3. Полученный отрезок вновь делим пополам, процесс повторяется до тех пор, пока разность x1 и x2 не станет меньше заданного значения eps.
При разработке алгоритма данной программы используем метод пошаговой детализации.
1 этап. Общая структура программы:
Программа:
Ввести y, n, eps
Определить x
Вывести x, y
Конец.
2 этап. Детализируем операцию определения x:
Определить x
Определить x1 такое, что f(x1)<=y
Определить x2 такое, что f(x2)>=y
Определить x на интервале [x1, x2]
Все.
3 этап. Детализируем операцию определения x1. Значение x1 подбираем таким образом, чтобы выполнялось условие f(x1)<=y. Известно, что x>0, следовательно, берем любое значение x, например x1=1 и будем его пследовательно уменьшать, допустим в 2 раза. Таким образом определим значение x1, удовлетворяющее данному условию:
Определить x1:
x1:=1
цикл - пока f(x1)>y
x1:=x1/2
Все - цикл
Все
4 этап. Детализируем операцию определения x2. Значение x2 определяем аналогично x1, но исходное значение будем последовательно увеличивать в 2 раза.
Определить x2:
x2:=1
цикл - пока f(x2)< y
x2:=x2*2