Maple тизимининг ыисыача характеристикаси
Бириктирилган операторлар ва функциялар
Download 0.71 Mb.
|
Maple
- Bu sahifa navigatsiya:
- 4.2. Бинар (инфикс) операторлар
- 4.3. Унар арифметик операторлар
- 4.5. Математик функциялар
- 5. Дастурлаш воситалари
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-жадвал. Бинар операторлар
Бинар операторларни қўллашга мисоллар: > [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 0.71 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling