13-Ma’ruza. Maple muhitida protseduralar bilan ishlash.
REJA:
Maple tizimida mantiqiy amallar.
Maple muhitida protseduralar bilan ishlash.
Maple tizimida mantiqiy amallar
Maple tizimida mantiqiy amallar protseduralari:
> con:=proc(x,y)
> min(x,y)
> end;
Konyunksiya amali
> con(0,1);
dizyunksiya amali
> diz:=proc(x,y)
> max(x,y)
> end;
> diz(0,1);
inkor amali
> no:=proc(x)
> 1-x
> end;
> no(1);
2 ga bo`lgandagi qoldiqni topish amali protsedurasi:
> mo:=proc(x)
> x mod 2
> end;
> mo(3);
> im:=proc(x,y)
> `if`(x<=y,1,0)
> end;
> im(0,1);
> iqv:=proc(x,y)
> `if`(x=y,1,0)
> end;
> iqv(0,1);
> g:=proc(x,y)
> con(diz(no(x),y),diz(x,no(y)))
> end;
> g(0,0);g(0,1);g(1,0);g(1,1);
> mo:=proc(x)
> x mod 10
> end;
> mo(100);
> a:=proc(x,y)
> con(x,y)
> end;
> a(0,0);a(0,1);a(1,0);a(1,1);
> z:=proc(x,y)
> diz(x,y)
> end;
> z(1,0),z(0,0);
> z:=proc(x,y)
> con(x,y)
> end;
Error, reserved word `end` unexpected
> z(1,0),z(1,1);
14,15-Ma’ruza. Maple tizimida ba’zi tadbiqiy masalalarni yechish muammolari.
REJA:
Vektorlar algebrasi.
Maple tizimida ba’zi tadbiqiy masalalarni yechish muammolari.
Vektorlar algebrasi
Chiziqli algebra masalalarini yechish uchun mo`ljallangan buyruqlarning asosiy qismi linalg kutubxonasida joylashgan. Shuning uchun matritsalar va vektorlar bilan masalalar hal etilishidan avval bu kutubxonani with(linalg) buyrug’i orqali faollashtirib olish kerak.
Maple dasturida vektorlarni ifodalashning
> x:=vector([a1,a2,a3,..an]);
usulidan ko`p marta foydalanamiz. Bu yerda a1,a2,a3,..an –berilgan x vektorning elementlaridir. Bundan tashqari vektorlarni quyidagi funksiyalar bilan ham ifodalash mumkin:
> a:=linalg[vector](n,[a1,a2,a3,..an]);
Bu yerda n –vektorning elementlari soni bo`lib, u natural sonlarda berilishi kerak, a1,a2,a3,..an esa a vektorning elementlari. Misol ko`ramiz:
> y:= linalg[vector](4,[1,x,x^2,x^3]);
To`rt elementga ega y vektorimizning elementlari 1, x, x2, x3 lardan iborat. Aytish mumkinki, berilgan vektorning elementlari soni vektorning ko`rsatib o`tilgan qiynatiga teng bo`lishi kerak, aks holda, tizim xatolik yuz berganini ko`rsatadi:
> linalg[vector](3,[a1,a2,a3,a4,a5,a6]);
Error, (in index/fill) a list with 6 entries cannot be used to initialize the range 1 .. 3
Misol:> linalg[vector](3,[1,x,x^2,x^3]);
Error, (in index/fill) a list with 4 entries cannot be used to initialize the range 1 .. 3
Agar vektorning elementlari soni uning ko`rsatib o`tilgan n qiymatdan kichik bo`lsa, u holda oxirgi elementlar o`rnida ?n kabi ko`rinishdagi ifoda hosil bo`ladi. Ya’ni:
> linalg[vector](5,[a1,a2,a3]);
Misol:
> linalg[vector](4,[1,x,x^2]);
Vektorlarni tasvirlashning yana bir usuli
> f:= array(1..n,[a1,a2,a3..
ko`rinishdagi funksiyadan iborat bo`lib, bu yerda ham n- vektorning elementlari sonini bildiradi.. Bunda ham yuqoridagi amal va xossalar o`rinli, ya’ni vektorning elementlari soni bilan uning ko`rsatib o`tilgan n qiymati teng bo`lishi zarur. Bu usulda ham ko`rsatib o`tilgan shartlar bajarilmasa, xatolik yuz beradi:
> array(1..5,[3,4,5,6,7,8]);
Error, (in index/fill) a list with 6 entries cannot be used to initialize the range 1 .. 5
> array(1..7,[3,4,5,6,7,8]);
Berilgan masalaning yechimini Maple sistemasi yordamida topar ekanmiz, Maplening ishchi sohasiga LinearAlgebra paketini faollashtirish maqsadida quyidagicha buyruqlar ketma-ketligini kiritamiz.
> restart;with(linalg);
Warning, the protected names norm and trace have been redefined and unprotected
Natijada Linalg paketining funksiyalari jamlanmasi ekranda paydo bo`ladi. Shundan keyin berilgan vektorlarni istalgan uchta usullardan biri yordamida tasvirlab olamiz.
|