ВУЗ:
Составители:
Рубрика:
→
x
2
+ y
2
)
f := z− > 2z(x)(
d
dx
z(x))
4sin(x)
3
cos(x)
Èíîãäà áûâàåò ïîëåçíûì áåñêîíå÷íûé öèêë, êîòîðûé ìîæíî ðåàëèçî-
âàòü, îïóñòèâ âñå óïðàâëÿþùèå öèêëàìè ïàðàìåòðû:
do EXPR2 end do;
Ýòîò öèêë áóäåò ðàáîòàòü äî òåõ ïîð, ïîêà âíóòðè íåãî íå âñòðåòèòñÿ
îøèáêà èëè íå áóäåò îñóùåñòâëåí âûõîä ñ ïîìîùüþ êîìàíä break èëè
return.
6.3 Ïðîöåäóðû-ôóíêöèè
Ïðîöåäóðû-ôóíêöèè ìîæíî çàäàâàòü íåñêîëüêèìè ñïîñîáàìè. Ïåðâûé
íàïîìèíàåò çàäàíèå îòîáðàæåíèÿ - íåêîòîðîå ÷èñëî âõîäíûõ ïàðàìåòðîâ
ïðè ïîìîùè çíàêà → ôîðìèðóåò ðåçóëüòèðóþùåå âûðàæåíèå expr:
NAME:=(VAR1, VAR,...)->expr
Çäåñü NAME - èìÿ ôóíêöèè, VAR1, VAR2,... - èìåíà ôîðìàëüíûõ
ïàðàìåòðîâ, à EXPR - âûðàæåíèå, ðåàëèçóþùåå òåëî ôóíêöèè. Òèïû ôîð-
ìàëüíûõ ïàðàìåòðîâ è ðåçóëüòàòà ðàáîòû ôóíêöèè ìîãóò áûòü ëþáûìè.
> f:=(x,y)->simplify(x^2+y^2); f(sin(x),cos(x));
f:=(x,y)->simplify(x2 + y 2 )
1
Âòîðîé ñïîñîá çàäàíèÿ ïðè òåõ æå âõîäíûõ ïàðàìåòðàõ èñïîëüçóåò êî-
ìàíäó unapply:
NAME:=unapply(EXPR, VAR1, VAR2,...)
Çäåñü VAR1, VAR2,... - ïåðåìåííûå, à EXPR - âûðàæåíèå èëè îïå-
ðàöèÿ. Ýòà êîìàíäà ïîëåçíà ïðè îïðåäåëåíèè íîâîé ôóíêöèè ÷åðåç èçâåñò-
íóþ èëè êîãäà âû÷èñëåííîå âûðàæåíèå ïðåäïîëàãàåòñÿ èñïîëüçîâàòü êàê
ôóíêöèþ. Íàïðèìåð:
>f:=unapply(diff(z(x)^2,x),z);f(sin^2);
d
f := z− > 2z(x)( z(x))
dx
4sin(x)3 cos(x)
6.4 Ïðîöåäóðû
Âñÿêàÿ ïðîöåäóðà â Maple íà÷èíàåòñÿ ñ çàãîëîâêà, êîòîðûé ñîñòîèò
èç èìåíè ïðîöåäóðû, çà êîòîðûì ñëåäóåò çíàê ïðèñâàèâàíèÿ è ñëóæåáíîå
ñëîâî proc, çàòåì â êðóãëûõ ñêîáêàõ ÷åðåç çàïÿòóþ óêàçûâàþòñÿ ôîð-
ìàëüíûå ïàðàìåòðû. Ïðîöåäóðà äîëæíà îáÿçàòåëüíî çàêàí÷èâàòüñÿ îïå-
ðàòîðîì end proc. Âñå êîìàíäû è âûðàæåíèÿ, ñòîÿùèå ïîñëå çàãîëîâêà
33
