Maple тизимининг ыисыача характеристикаси
Бириктирилган операторлар ва функциялар
Download 1.35 Mb.
|
Maple 72
- Bu sahifa navigatsiya:
- 4.2. Бинар (инфикс) операторлар
- 4.3. Унар арифметик операторлар
- 4.5. Математик функциялар
- 5. Дастурлаш воситалари
4. Бириктирилган операторлар ва функциялар4.1. Операторлар ва операндларОператорлар кириш ёки дастурлаш тилида ифодаларни тузиш ва маълумотлар устида маълум амалларни бажаришни учун ишлатилади. Maple тизимида операторларнинг беш хил тури мавжуд: binary — бинар операторлар (икки операндли); unary — унар операторлар (бир операндли); nullary — нулpар операторлар (операндсиз); precedence — катталик операторлари (мантиқий операторлар ҳам); functional — функционал операторлар. Операторлар ва уларнинг хоссаларини кўриш учун қуйидаги буйруқлардан фойдаланиш мумкин: > ?operators[binary]; > ?operators[unary]; > ToperatorsCnullary]; > ?operators[precedence]; > ?operators[functional]: Операторларнинг қўлланиш намуналарини ўрганиш учун қуйидаги буйруқ бажарилади: > ?operators[examples]; Қуйидаги > Tdefine: буйруғи define функцияси билан танишиш имкониятини беради. 4.2. Бинар (инфикс) операторларБинар (инфикс) операторлар иккита операнд билан биргаликда ишлатилади. Одатда операндлар операторнинг иккала тамонига жойлаштирилади. Maple 7 тизимининг ядросига ўттиздан ортиқ бинар операторлар киритилган. уларнинг айримлари 6.1-жадвалда келтирилган. 6.1-жадвал. Бинар операторлар
Бинар операторларни қўллашга мисоллар: > [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-жадвал. Унар операторлар
4.4. Мантиқий операторлар Мантиқий операторлар катталиклар ёки ифодалар орасидаги мантиқий боғланишни кўрсатади. 6.З-жадвал. Бинар мантиқий операторлар
Ушбу операторлар иштирокидаги 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 1.35 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling