Maple тизимининг ыисыача характеристикаси


Бириктирилган операторлар ва функциялар


Download 0.71 Mb.
bet17/19
Sana20.12.2022
Hajmi0.71 Mb.
#1034876
1   ...   11   12   13   14   15   16   17   18   19
Bog'liq
Maple

4. Бириктирилган операторлар ва функциялар

4.1. Операторлар ва операндлар


Операторлар кириш ёки дастурлаш тилида ифодаларни тузиш ва маълумотлар устида маълум амалларни бажаришни учун ишлатилади.


Maple тизимида операторларнинг беш хил тури мавжуд:
binary — бинар операторлар (икки операндли);
unary — унар операторлар (бир операндли);
nullary — нульар операторлар (операндсиз);
precedence — катталик операторлари (мантиқий операторлар ҳам);
functional — функционал операторлар.
Операторлар ва уларнинг хоссаларини кўриш учун қуйидаги командалардан фойдаланиш мумкин:
> ?operators[binary]; 
> ?operators[unary]; 
> ToperatorsCnullary]; 
> ?operators[precedence];
> ?operators[functional]:
Операторларнинг қўлланиш намуналарини ўрганиш учун қуйидаги команда бажарилади:
> ?operators[examples];
Қуйидаги
> Tdefine:
командаси define функцияси билан танишиш имкониятини беради.

4.2. Бинар (инфикс) операторлар


Бинар (инфикс) операторлар иккита операнд билан биргаликда ишлатилади. Одатда операндлар операторнинг иккала томонига жойлаштирилади. Maple 7 тизимининг ядросига ўттиздан ортиқ бинар операторлар киритилган. уларнинг айримлари 6.1-жадвалда келтирилган.


6.1-жадвал. Бинар операторлар

Белгиланиши

Оператор

+

Қўшиш

-

Айириш

*

Кўпайтириш

/

Бўлиш

** или ^

Даражага кўтариш

mod

Бўлишдан қодиқ

$

Кетма-кетлик оператори

.

Ажратувчи нуқта

@

Композиция оператори

@@

Композицияни такрорлаш

,

Ифодаларни ажратиш

:=

Ўзлаштириш

. ..

Интервални бериш

/

Ифодаларни ажратиш

&*

Нокоммутатив кўпайтириш

&

Нейтрал оператор

||

Конкатенация (бирлаштириш)

Бинар операторларни қўллашга мисоллар:
> [4^3,4**3];
[64, 64]
> 9 mod 6, 5 mod 8;
3, 5
> [5@2,3@@2];

> [x@x,x@@x];

> [x$3,x$4];

> int(x^2,x=1..4);

> f:=a->1/(1+a);(f@@3)(a);


> f:=x->sqrt(1+x);

> f(f(0));

> f(f(f(0)));

(f@@10)(x);

Кейинги мисолда занжирли радикал тузилади ва у циклда ҳисобланади:
> For k from 1 to 10 do (f @@ k)(0)=evalf((f @@ k)(0)); od;












4.3. Унар арифметик операторлар


Унар операторлар фақат битта операнд билан ишлатилади. Улар префикс (оператор операнддан олдин) постфикс (оператор операнддан кейин) бўлиши мумкин (6.2-жадвал).


6.2-жадвал. Унар операторлар

Белгиланиши

Оператор

+

Унар плюс (префикс)

-

Унар минус (префикс)

;

Факториал (постфикс)

.

Ўнли нуқта (префикс ёки постфикс)

$

Кетма-кетлик (префикс)

not

Мантиқий инкор (префикс)

&string

Метка (префикс)



4.4. Мантиқий операторлар

Мантиқий операторлар катталиклар ёки ифодалар орасидаги мантиқий боғланишни кўрсатади.


6.З-жадвал. Бинар мантиқий операторлар

Белгиси

Оператор

<

Кичик

<=

Кичик ёки тенг

>

Катта

>=

Катта ёки тенг

=

Тенг

<>

Тенг эмас

and

Мантиқий "ВА"

or

Мантиқий "ЁКИ"

Ушбу операторлар иштирокидаги x=y га ўхшаш конструкциялар шарт бажарилса true константасини, бажарилмаса false константасини қайтаради. Қайтариладиган қийматни evalb(шарт) функция ёрдамида кўриш мумкин, масалан:
> 7=8;
7 = 8
> evalb(%);
false
> evalb(12>7+4);
true
> evalb(12>7+8);
false
> evalb(not(%));
true
> evalb(5=5 or 4<2);
true
> evalb(5=6 or 4<2);
false
> evalb(x+y=y+x);
true

4.5. Математик функциялар


Айрим бутун сонли функциялар ва факториал :
factorial (n) — факториални ҳисоблаш функцияси (ёки !-оператори);
iquo(a.b) — а ни b га бутун сонли бўлиш;
irem(a,b) — а ни b га бўлишдан қоладиган қолдиқ;
igcd(a b) — энг катта умумий бўлувчи;
lcm(a,b) — энг кичик умумий каррали.
Қўлланилишига мисоллар:
> 3!;

> 3!!;

> 6!;

> factorial(3!);

> [3!,6!,3!!,(3!)!,factorial(3!)];

> iquo(185,7);

> irem(185,5);

> irem(234,5);

5. Дастурлаш воситалари

5.1. Фойдаланувчининг функциялари 


Maple 7 тизимининг ядроси , библиотекалари ва пакетларида 3000дан ортиқ функциялар бўлишига қарамасдан фойдаланувчига зарур функция бўлмаслиги мумкин. Бу ҳолда фойдаланувчининг функцияси деб аталувчи функцияни яратишга тўғри келади. Энг содда функциялардан бири "ном:=ифода" кўринишидаги функциядир,масалан:


> m:=sqrt(x^2+y^2);

> x:=3:y:=4:'m'=m;

> 'm'=evalf(m);

Бундай йўл билан берилган объект тўла қонли функция бўлолмайди. Чунки унда глобал ўзгарувчилардан (x ва y) фойдаланилган ва уларнинг қийматларини алоҳида ўзлаштириш операторларидан фойдаланиб беришга тўғри келади.
Maple 7 тизимида функция ҳосил қилиш учун одатда қуйидаги функционал оператордан фойдаланилади:
name:=(x,y,...)->expr
бу ерда (x,y,…) - name номли функциянинг формал параметрлари рўйҳати, expr - математик ифода.
Функция қуйидаги кўринишда чақирилади:
name(x,y,…). Формал параметрлар рўйҳатида кўрсатилган ўзгарувчилар локал ўзгарувчилар бўлиб ҳисобланади. Уларнинг ўрнига ҳақиқий параметрлар қўйилганда улар ўз қийматларини фақат функциянинг қобиғидагина (expr) сақлайди. Ушбу функциядан ташқарида улар ноаниқ бўладилар ёки функция чақирилишидан аввал қабул қилган қийматларига эга бўладилар:
> restart:
> x:=15;y:=46;


> m:=(x,y)->(x^2+y^3);

> m(5,8);

> m(8.2,23);

> [x,y];

Ушбу мисолда, m(x,y) функция ҳисобланишидан олдин x ва y ўзгарувчилар 15 ва 46 қийматларга эга эдилар. Функция ҳисобланаётганда 5 ва 8 қийматларга эга бўлшганига қарамасдан функциядан ташқарида яна ўзларининг аввалги 15 ва 46 қийматларинисақлаб қолишди.


Функция яратишнинг яна бир йўли unapply функциясидан фойдаланишдир:
name:=unapply(expr,varl,var2,...)
бу ерда expr – ифода; varl,var2,... – ўзгарувчилар. Қуйидаги мисолларни кўрайлик:
> restart:
> f1 := unapply(sqrt(x^2+y^2),x,y);

> f1(5.,8);

> f2:=unapply(x^2+y^2,x,y);

> f2(sin(x),cos(x));

> simplify(f2(sin(x),cos(x)));

Сўнгги мисол фойдаланувчи функциясининг устида символли амалларни ҳам бажариш мумкинлигини кўрсатади (simplify-соддалаштириш функцияси).
Фойдаланувчи функциясини бажариш натижаларини график визуаллаштириш plot функцияси ёрдамида амалга оширилади:
> f3:=(x,y)->cos(x*y)/(x*y+3):
> plot3d(f3(x,y),x=-6..6,y=-6..6,orientation=[55,25]);

> f4:=(x,y)->sin(x*y)/(x*y):

Download 0.71 Mb.

Do'stlaringiz bilan baham:
1   ...   11   12   13   14   15   16   17   18   19




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling