Vektorlarni tashkil etish. Reja



Yüklə 59,3 Kb.
tarix19.12.2023
ölçüsü59,3 Kb.
#150636
Vektorlarni tashkil etish-fayllar.org



Vektorlarni tashkil etish.


Reja:
1.Skalyar va vektor miqdorlar.
2.Vektor tushunchasi.
3.Vektorlar ustida chiziqli amallar.
4.Ikki vektor orasidagi burchak tushunchasi.

Skalyar va vektor miqdorlar. Kundalik hayotimizda: institutning eng keksa o’qituvchisining yoshi nechada?; ma‘lum quduqdan bir kecha-kunduzda qancha neft olinadi?; fakultet talabalari bir kunda qancha paxta teradi?; Bobomurod traktorchi bir kunda qancha yer haydaydi?; korxona bir kunda necha metr mato ishlab chiqardi?; xonadagi havoning harorati qanday; bir dona to’la ochilgan paxta ko’sagining massasi qancha?; ishchi bir kunda qancha g’isht terdi?; zavod bir kecha-kunduzda qancha neftni qayta ishlaydi? kabi savollarga duch kelamiz. Bu savollarning barchasiga bitta aniq son yordamida to’liq javob olish mumkin. Boshqacha aytganda bu yerda miqdor o’zining faqatgina son qiymati bilan to’la aniqlanadi. O’zining son qiymati bilan to’liq aniqlanadigan miqdorlar skalyar miqdorlar deyiladi. Uzunlik, yuza, hajm va harorat skalyar miqdorga misol bo’la oladi. Shunday miqdorlar ham uchraydiki, ularni faqatgina son qiymati orqali to’liq aniqlab bo’lmaydi. Masalan: Qarshi shahridan 70km/soat tezlik bilan chiqqan avtomobil bir soatdan keyin qaerda bo’ladi? degan savolga birgina 70 km/soat yordamida javob berib bo’lmaydi. Agarda masalaning shartiga yo’nalish tayinlansa, uni hal etish mumkin. Ya‘ni Qarshi shahridan 70 km/soat tezlik bilan Qarshi-Samarqand yo’nalishi bo’yicha harakatlanayotgan avtomobil bir soatdan keyin qaerda bo’ladi? deyilsa, bu savolga to’liq javob berish mumkin. Son qiymatidan tashqari ma‘lum yo’nalishga ega bo’lgan miqdorlar vektor miqdorlar deyiladi. 22 Harakat tezligi, tezlanish, kuch, magnit va elektr maydonining kuchlanganligi kabi kattaliklar vektor miqdorga misol bo’ladi.


Vektor tushunchasi. Vektor kattalik (miqdor) lar vektor ko’rinishida tasvirlanadi. 4.1-ta‘rif. Yo’nalgan kesma vektor deyiladi. Boshlanish (bosh) nuqtasi А va oxirgi nuqtasi В bo’lgan vektorni АВ (yoki АВ ) kabi yozish qabul qilingan. Ba‘zan vektorni bitta harf bilan а  (yoki а ) kabi belgilanadi. А va В nuqtalar orasidagi masofa АВ vektorning uzunligi deyiladi. АВ vektorning uzunligini uning moduli ham deb yuritiladi va АВ ko’rinishda belgilanadi. Boshi oxiri bilan ustma-ust tushgan vektor nol vektor deb ataladi va 0 (yoki 0 ) bilan belgilanadi. Demak, АА=0 –nol vektor. Nol vektorning moduli 0 ga teng bo’lib, uning yo’nalishi aniq emas. ВА vektor АВ vektorga qarama-qarshi vektor deyiladi. а  vektorga qarama-qarshi vektor- а  kabi belgilanadi. Uzunligi 1 ga teng vektor birlik vektor deyiladi va а  vektorga mos (shu o’qda yotadi hamda u bilan bir xil yo’nalishga ega) birlik vektor а  0 kabi belgilanadi. 4.2-ta‘rif. Bitta to’g’ri chiziqda yoki parallel to’g’ri chiziqlarda yotuvchi а  va b  vektorlar kollinear vektorlar deyiladi (18-chizma).

4.3-ta‘rif. Bitta tekislikda yoki parallel tekisliklarda yotuvchi vektorlar komplanar vektorlar deb aytiladi. 4.4-ta‘rif. Kollinear а  va b  vektorlar bir xil yo’nalgan hamda bir xil uzunlikka ega bo’lsa, teng deyiladi ( а  =b  kabi yoziladi) (18b-chizma). Ta‘rifga binoan berilgan vektorni o’z-o’ziga parallel ko’chirish natijasida unga teng vektor hosil bo’ladi. Boshqacha aytganda vektorni uzunligi va yo’nalishini o’zgartirmagan holda uni fazoning bir nuqtasidan boshqa bir nuqtasiga ko’chirish mumkin ekan. Bunday vektorlar erkin vektorlar deyiladi. Biz faqatgina erkin vektorlar bilan ish ko’ramiz. 4.3. Vektorlar ustida chiziqli amallar. Matematikada vektor tushunchasi son tushunchasiga nisbatan murakkab tushuncha. Sonlar ustida bajariladigan barcha amallarni vektorlar ustida bajarib bo’lmaydi. Masalan ko’paytirish, bo’lish, darajaga ko’tarish, ildiz chiqarish kabi amallarni vektorlar ustida bajarish mumkin emas. 23 Vektorlar ustida chiziqli amallar deb, vektorlarni qo’shish, ayirish hamda vektorlarni songa ko’paytirish amallariga aytiladi. 1. Vektorlarni qo’shish. Noldan farqli ikkita а  va b  vektorlarni olamiz. Ixtiyoriy 0 nuqtani olib ОА=а  vektorni yasaymiz, so’ngra А nuqtaga АВ =b  vektorni qo’yamiz. Ikkita а  va b  vektorlarning yig’indisi а  + b  deb birinchi qo’shiluvchi а  vektorning boshini ikkinchi qo’shiluvchi b  vektorning oxiri bilan tutashtiruvchi ОВ vektorga aytiladi. (19а -chizma). Vektorlarni bunday qo’shish usuli uchburchak usuli deyiladi.


Uchta а  , b  va с  vektorlarning yig’indisi а  + b  + с  deb birinchi qo’shiluvchi а  vektorni oxiriga ikkinchi qo’shiluvchi b  vektorni boshini qo’yib, so’ngra ikkinchi qo’shiluvchi vektorning oxiriga uchinchi с  qo’shiluvchi vektorning boshini qo’yib birinchi а  vektorning boshi bilan uchinchi с  vektorning oxirini tutashtirish natijasida hosil bo’lgan vektorga aytiladi (19б -chizma). Vektorlarni bu xilda qo’shish qo’shiluvchilar soni har qanday bo’lganda ham yaroqlidir. Endi vektorlarni qo’shishning boshqa bir usuli bilan tanishamiz. ОА=а  va ОС =b  vektorlarni yig’indisini topish uchun bu vektorlarni tomon hisoblab ОАВС parallelogramm yasaymiz. Parallelogrammning O uchidan o’tkazilgan diagonali ОВ vektor, а  va b  vektorlarni yig’indisini ifodalaydi. Vektorlarni bunday qo’shish usuli parallelogramm qoidasi deb ataladi (19d -chizma). 2. Vektorlarni ayirish. а  va b  vektorlarni ayirmasi а  -b  deb b  vektor bilan yig’indisi а  vektorni beradigan c  vektorga aytiladi. Demak а  -b  ayirmani topish uchun а  vektor bilan b  vektorga qarama-qarshi -b  vektorni yig’indisini topish lozim ekan. ОА=а  va ОС =b  vektorlarni ayirmasini topish uchun bu vektorlarni 24 tomon hisoblab, yasalgan ОАВС parallelogramning С uchidan o’tkazilgan diagonali СА vektorni topish lozim. Ayirma vektorda yo’nalish «ayriluvchidan» dan «kamayuvchi» ga qarab yo’naladi(19e -chizma). 3. Vektorni songa ko’paytirish. Noldan farqli а  vektorning m0 songa ko’paytmasi deb, а  vektorga kollinear, uzunligi m a   ga teng bo’lgan, m0, bo’lganda а  vektor bilan bir xil yo’nalgan, m  0 bo’lganda esa unga qarama–qarshi yo’nalgan hamda m а  bilan belgilanadigan vektorga aytiladi(20-chizma).

Izoh. 1. Istalgan а  vektorni uning uzunligi а  bilan unga mos а  0 birlik vektorni ko’paytmasi shaklida tasvirlash mumkin, ya‘ni а  = а   0 а  . 2. а  va b  ( b   0 ) kollinear vektorlar uchun shunday yagona  son mavjud bo’lib а  = b  tenglik o’rinli bo’ladi. Haqiqatan, а  = а   0 а  , b  = b   0 b  vektorlarni kollinearligidan 0 а  = 0 b  ekanligi kelib chiqadi. U holda а  = а  0 b  = b а  b  yoki  b а  = belgilashni kiritsak а  =  b  hosil bo’ladi. Shunday qilib vektorlarni qo’shish, ayirish hamda vektorni songa ko’paytirish natijasida vektor hosil bo’lar ekan. Vektorlar ustida chiziqli amallar quyidagi xossalarga ega. 1. а  + b  =b  + а  (21а -chizma); 2. ( а  + b  )+ с  =а  + ( b  + с  ) (21b -chizma); 3. m( а  + b  )=m а  + m b  . 4. а  +0= а  ; 5. а  +(- а  )= 0 ; 6. а  1= а  ; 7. (m+n)  а  = m а  +n а  , m va n haqiqiy sonlar; 8. (mn)  а  = m(n а  )=n (m а  ). 4.4. Ikki vektor orasidagi burchak tushunchasi. 25 Fazoda а  va b  vektorlar berilgan bo’lsin. Fazoda ixtiyoriy 0 nuqtani olib ОА =а  va ОВ =b  vektorlarni yasaymiz. 5-tarif. а  va b  vektorlar orasidagi burchak deb ОА va ОВ vektorlardan birini ikkinchisi bilan ustma-ust tushishi uchun burilishi lozim bo’lgan  (0     ) burchakka aytiladi. а  vektor bilan  o’q orasidagi burchak deganda а  vektor bilan  o’qda joylashgan va у bilan bir xil yo’nalgan 0   birlik vektor orasidagi burchak tushiniladi. а  va b  vektorlar orasidagi burchak ( а  ^ b  ) kabi belgilanadi. Ikki vektorning skalyar ko’paytmasi а  ·b  = а  · b ·cos( а  ^ b  ) dan cos( а  ^ b  )= а b а b       ni topamiz. Agar vektorlar а  =а х i  + a y j  + a z k  , b  =bх i  +bу j  +bz k  yoyilmari yordamida berilgan bo’lsa, u holda (7.9) dan hamda vektorni uzunligini topish formulasi (6.6) dan foydalanib vektorlar orasidagi burchakning kosinusini topish uchun.

Massivlar funksiya parametrlari sifatida


Bir o'lchovli massivni funktsiyaga o'tkazish
Massivni funktsiya parametri sifatida ishlatish hech qanday qiyinchilik tug'dirmaydi. Yuqorida aytib o'tganimizdek, massiv har doim manzil bo'yicha quyi dasturga uzatiladi, shuning uchun funktsiyani chaqirishda massiv boshining manzilini yoki massivga ishlov berilishi kerak bo'lgan elementning manzilini ko'rsatish kifoya.
Massiv manzil bo'yicha uzatiladi, shuning uchun biz birinchi parametrni int tipidagi ob'ektga manzil sifatida yozamiz. Ushbu ko'rsatkich ob'ekti chaqiruvchi funksiyada baholanadigan massiv elementining manzilini oladi (masalan, main() da).

Qaysi shakldan foydalanish kerak? Bu lazzat masalasi. Kompilyator 1-variantni 2-variantga ekvivalent deb hisoblaydi, garchi bu odam uchun 1-variant aniqroq bo'lsa ham. Bu shuni ko'rsatadiki, rasmiy parametr, masalan, bitta elementga ko'rsatgich emas, balki aynan massivdir.


Qo'ng'iroq qilishda x ni &x[0] sifatida ko'rib chiqish, agar kerak bo'lsa, subprogrammaga butun massivni emas, balki qaysidir manzildan boshlab uning faqat bir qismini o'tkazish imkonini beradi. Masalan, qo'ng'iroq qiling

2 indeksli elementdan boshlab, massivning uchta elementini ekranda ko'rsatishga olib keladi. Shu bilan birga, funktsiyaning o'zi hech qanday o'zgartirishni talab qilmaydi. Shu nuqtai nazardan, C/C++ tillari boshqa ko'plab tillarga qaraganda ancha qulayroqdir. Shunday qilib, Paskal yoki BASICda yana bitta parametrni pastki dasturga o'tkazish kerak bo'ladi - massivni qayta ishlashni boshlash kerak bo'lgan elementning raqami va keyin bu raqamni sikl operatorida ishlating.


Matritsa funktsiya parametri sifatida
Matritsani pastki dasturga parametr sifatida o'tkazish bir o'lchovli massivni o'tkazishdan ko'ra biroz murakkabroq.
Matritsa manzil bo'yicha ham o'tkaziladi. Funksiyani chaqirishda matritsa nomini ko'rsatish kifoya (bu ikki o'lchovli massiv boshining manzili bo'ladi), lekin matritsa tavsifini rasmiy parametrlar ro'yxatida qanday ko'rsatish kerak? Matritsa, yuqorida aytib o'tilganidek, massivlar massividir. Shuning uchun siz rasmiy parametrni quyidagicha yozishga harakat qilishingiz mumkin:
Maʼlumotlar turi nomi

Afsuski, bu ishlamaydi. Birinchi bo'sh kvadrat qavslar biz massiv bilan ishlayotganimizni ko'rsatadi. Bu qabul qilinadi. Kvadrat qavslarning ikkinchi juftligi, bu ham massiv ekanligini ko'rsatuvchi belgi sifatida xatolik hosil qiladi. Bu erda kompilyator batafsilroq ma'lumot olishni xohlaydi. Noma'lum massivlar massivi unga mos kelmaydi. Ikkinchi qavslarda siz doimiyni yozishingiz kerak, shunda kompilyator matritsadagi xotira satrlar va ustunlar bo'ylab qanday taqsimlanganligini tushunishi mumkin.


biz faqat ikki o'lchovli matritsalarni ko'rib chiqamiz) chiziqli algebra sohasidagi kuchli matematik nazariyaga asoslanadi. Bir ta'rif yoki harakat boshqasidan kelib chiqadi, bir funktsiya boshqasini chaqiradi. Shuning uchun funktsional tillar matritsalar bo'yicha matematik operatsiyalar funksionalligini dasturiy ta'minotni amalga oshirish uchun juda mos keladi. Ushbu maqolada biz F# tilidagi aniq misollarni ko'rib chiqamiz va uning qanday ishlashi haqida batafsil izoh beramiz. F# .NET oilasining bir qismi bo'lganligi sababli, natijada olingan funksionallik C# kabi boshqa imperativ tillarda muammosiz ishlatilishi mumkin.

Matritsalar chiziqli algebraning asosiy va eng muhim qismidir. Matritsalar ko'pincha dasturlashda, masalan, 3D modellashtirish yoki o'yinni ishlab chiqishda qo'llaniladi. Albatta, g'ildirak uzoq vaqtdan beri ixtiro qilingan va matritsalar bilan ishlash uchun kerakli ramkalar allaqachon tayyor va ulardan foydalanish mumkin va kerak. Ushbu maqola yangi ramka ixtiro qilishni maqsad qilgan emas, balki F# dasturlash tilidan foydalangan holda funktsional uslubda matritsalar bilan ishlash uchun asosiy matematik operatsiyalarni amalga oshirishni ko'rsatadi. Materialni ko'rib chiqqach, biz matritsalarning matematik nazariyasiga murojaat qilamiz va uni kodda qanday amalga oshirish mumkinligini ko'rib chiqamiz.


Birinchidan, matritsa nima ekanligini eslaylik? Nazariya bizga quyidagilarni aytadi
m satr va n ta ustundan iborat to‘rtburchaklar jadvali m x n matritsa deyiladi.
Matritsalar, qoida tariqasida, lotin alifbosining bosh harflari bilan belgilanadi va shunday yoziladi.
Keling, yuqoridagi kodni batafsil ko'rib chiqaylik. Ko'rib turganingizdek, bu erda uchta funktsiya mavjud. Birinchi o'lchamlar funktsiyasi matritsaning o'lchamini kortej sifatida qaytaradi. Biz faqat to'rtburchaklar matritsalar bilan ishlayotganimiz sababli, qatorlar sonini olish uchun biz birinchi ustunning to'liq qismini olamiz va uning uzunligini qaytaramiz.

kki matritsa elementini element bo'yicha taqqoslash uchun == operatori ancha murakkab ko'rinadi, ammo endi siz bu ham oddiy ekanligini ko'rasiz.
Ikki matritsani solishtirishdan oldin ularning o'lchamlarini solishtiramiz. Agar ular teng bo'lmasa, unda keyingi tekshirishning ma'nosi yo'q, chunki matritsalar ham teng bo'lmasligi allaqachon aniq. bo'lmasa (Matrix.isEquallySized matrix1 matrix2) u holda noto'g'ri


Keyinchalik, dastlabki matritsalar matritsalari 1 va matritsalar asosida, ikkala matritsaning mos keladigan kataklari mos kelishiga qarab, haqiqiy yoki noto'g'ri bilan to'ldirilgan yangi matritsa hosil qilamiz.
Yüklə 59,3 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə