Foydalanuvchi orqali aniqlanuvchi o‘rnatilgan operatorlar




Download 6,33 Mb.
Pdf ko'rish
bet129/194
Sana20.02.2024
Hajmi6,33 Mb.
#159185
1   ...   125   126   127   128   129   130   131   132   ...   194
 
12 Foydalanuvchi orqali aniqlanuvchi o‘rnatilgan operatorlar 
Ada va C++ dasturlash tillarida foydalanuvchi operatorlarni o‘rnatishi mumkin. 
Bunga misol qilib, Ada tilidagi funksiyani ko‘rib chiqamiz, bunda u ikkita vektor 
skalyar ko‘paytmasini hisoblash uchun (*) ko‘paytirish operatorini o‘rnatadi. Ikkita 
vektorning skalyar ko‘paytmasi deganda, ushbu vektorlarning mos elementlarini 
juftlab ko‘paytirish tushuniladi. Aytaylik, VECTOR_TYPE o‘zgaruvchisi INTEGER 
tipidagi elementlarni saqlovchi massiv kabi aniqlangan bo‘lsin. 
function “*” (A, B: in VECTOR_TYPE) return INTEGER is 
SUM: INTEGER:=0; 
begin 
for INDEX in A’range loop 
SUM := SUM+A (INDEX) * B (INDEX); 
end loop; - for Index… 
return SUM; 
end “*”; 
Ushbu funksiya aniqlanishida ko‘rsatilganidek, VECTOR_TYPE tipli operandlar 
orasida ko‘paytirish (*) belgisi qo‘yilishi bilanoq skalyar ko‘paytma hisoblanadi. 
Yulduzcha bundan keyin ham hohlagancha o‘rnatilishi mumkin, chunki funksiya 
aniqanishi oynali protokolga ega. 
Yuqorida ko‘rsatilgan skalyar ko‘paytmani hisoblash funksiyasi C++ tilida ham 
yozilishi mumkin. Bunday funksiya prototipi quyidagi ko‘rinishda bo‘ladi: 
int operator * (const vector &a, const vector &b, int len); 
Albatta, savol yuzaga keladi: operatorni qancha marta o‘rnatish mumkin va 
uni juda ko‘p o‘rnatib yuborish yomon emasmi? Javob mana bunday: operatorni 
chekli miqdorda o‘rnatish mumkin, bu − dasturchining o‘ziga bog‘liq. Operatorning 
juda ko‘p o‘rnatilib yuborilishi sababli dasturning ishonchliligi yo‘qoladi. Ko‘p 
hollarda, dasturda boshqa turdagi operandlarga qo‘llaniluvchi operatorlar mavjud 
bo‘lsa, u o‘qiluvchan hisoblanadi. Hatto skalyar ko‘paytmada ham oddiy olish 
operatori tushunarli emas: 


Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
246 
C:=A*B; 
A, B va C o‘zgaruvchilar skalyar kattaliklar deb xato tushunchaga ega bo‘lish 
mumkin. 
Bundan tashqari, dasturiy ta’minot tizimlari ishlab chiqaruvchilarning turli 
guruhlari tomonidan yaratiluvchi modullardan yaratiladi. Agar turli guruhlar bir xil 
operatorni turli usullar bilan o‘rnatgan bo‘lsalar, modullar yagona tizimga 
birlashtirilishidan oldin ushbu nomutanosibliklarni yo‘qotish lozim. 

Download 6,33 Mb.
1   ...   125   126   127   128   129   130   131   132   ...   194




Download 6,33 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



 Foydalanuvchi orqali aniqlanuvchi o‘rnatilgan operatorlar

Download 6,33 Mb.
Pdf ko'rish