ВУЗ:
Составители:
Как видно из графика, гипербола
2
2
−
+
=
x
x
y
имеет вертикальную асимптоту x = 2 и горизонтальную
– y = 1. Таким образом, предложенное для решения уравнение имеет бесконечное количество корней в
диапазоне от нуля до -∞. Пробуем решить уравнение при помощи функции fsolve.
> fsolve(cos(x)-(x+2)/(x-2),x);
-1.662944360
Найден ближайший к нулю корень. Для того, чтобы найти следующий корень функции fsolve необ-
ходимо указать интервал для поиска, при этом крайне желательно чтобы на этом интервале был только
один корень. Итак, найдем второй корень.
> fsolve(cos(x)-(x+2)/(x-2),x=-6..-4);
-5.170382990
6 УПРАВЛЯЮЩИЕ КОНСТРУКЦИИ
Любой алгоритм можно реализовать, используя лишь три управляющие конструкции: последова-
тельное выполнение, ветвление и цикл.
Оператор ветвление можно изобразить следующей синтаксической диаграммой:
if <условие> then <последовательность операторов>
[ elif <условие> then < последовательность операторов > ]
[ else < последовательность операторов > ]
end if
Выражение elif следует понимать как else-if, т.е. «в противном случае проверить следующее усло-
вие». В квадратных скобках – необязательные параметры.
Покажем, как можно вычислить корни квадратного уравнения с использованием оператора ветвле-
ния if:
> a:=2;b:=6;c:=1;
d:=b^2-4*a*c;
if d>0 then (-b+sqrt(d))/2/a,(-b-sqrt(d))/2/a
elif d=0 then -b/2/a
else print(`Действительных корней нет !!!`)
end if;
:= a 2
:= b 6
:= c 1
:= d 28
,− +
3
2
7
2
− −
3
2
7
2
Страницы
- « первая
- ‹ предыдущая
- …
- 38
- 39
- 40
- 41
- 42
- …
- следующая ›
- последняя »