Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr


 Foydalanuvchi orqali aniqlanuvchi o‘rnatilgan operatorlar



Download 5,36 Mb.
Pdf ko'rish
bet229/335
Sana02.08.2021
Hajmi5,36 Mb.
#136132
1   ...   225   226   227   228   229   230   231   232   ...   335
Bog'liq
Dasturlash asoslari(O'zbekcha)

 
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 5,36 Mb.

Do'stlaringiz bilan baham:
1   ...   225   226   227   228   229   230   231   232   ...   335




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish