Muhammad Al-Xorazmiy nomidagi Toshkent Axborot texnologiyalari Universiteti Dasturiy injenering fakulteti swd 008 guruh talabasi Qo’chqorov Jasurning Dasturlash fanidan “Ko’rsatkich nima ?


Parametrlar soni nomaʻlum boʻlgan funksiyalar


Download 166.52 Kb.
bet8/9
Sana28.12.2022
Hajmi166.52 Kb.
#1019139
1   2   3   4   5   6   7   8   9
Bog'liq
Jasur Qo\'chqorov dasturlash mustaqil i9sh

Parametrlar soni nomaʻlum boʻlgan funksiyalar. Bunday
funksiyalar sarlavhasi quyidagi formatda yoziladi:tipi> (, …)
Bu yerda <oshkor parametrlar roʻyxati>- oshkor ravishda
yozilgan parametrlar nomi va tipi. Bu parametrlar majburiy parametrlar
deyiladi. Bunday parametrlardan kamida bittasi boʻlishi shart. Qolgan
parametrlar soni va tipi nomaʻlum hisoblanadi. Ularni aniqlash va
ishlatish toʻla ravishda dastur tuzuvchi zimmasiga yuklanadi.
Oʻzgaruvchan sondagi parametrlarni tashkil qilish usuli:
1-usul.
Parametrlar roʻyxati oxirida yana bir maxsus parametr yoziladi
va uning qiymati parametrlar tugaganligini bildiradi. Kompilyator
tomonidan funksiya tanasida parametrlar birma-biraniqlashtiriladi.
Barcha parametrlar tipi oxirgi maxsus parametr tipi bilan ustma-ust
tushadi deb hisoblanadi;
2-usul. Birorta maxsus parametr sifatida nomaʻlum parametrlar soni
kiritiladi va unga qarab parametrlar soni aniqlanadi.
Ikkala usulda ham parametrlarga murojaat qilish uchun
koʻrsatkichlar ishlatiladi.
Misol:

#include "iostream"
using namespace std;
float summa (int k,...)
{ float p=0;
int *prt=&k;
if(*prt==0.0) cout<<" 0 ";
for(; *prt; prt++) { p+=*prt;}
return p;}
int main(){
cout<<"\n "<
cout<<"\n "<
}

Har xil tipdagi parametrlarni ishlatish uchun tipni aniqlaydigan funksiya

#include "iostream"
int Summa(char ,int,...);
using namespace std;
int main(){
cout<<"1="<
cout<<"2="<
cout<<"3="<
}
int Summa(char z, int k,...){
switch(z){
case ʻiʻ:{
int * ptr=&k+1;
int s=0;
for(;k--;ptr++) s+=*(ptr);
return(int)s;
}
case ʻfʻ:{
float*ptr=(float *)(&k+1); float s=0.0;
for(;k--;ptr++) s+=*(ptr);
return s;
}
default:{
cout<<"\n parametr hato berilgan ";
return 9999999.0;
break;
}}}



Dinamik xotira bilan ishlash.Dinamik massiv va ularni funksiya


parametri sifatida qoʻllanilishi.Statistik massivlarning kamchiliklari
shundaki, ularning oʻlchami oldindan maʻlum boʻlishi kerak, undan
123
tashqari bu oʻlcham ma’lumotlarga ajratilgan xotira segmentining
oʻlchami bilan chegaralangan. Ikkinchi tomondan, yetarlicha katta
oʻlchamdagi massiv eʻlon qilib, aniq masala yechilishida ajratilgan
xotira toʻliq ishlatilmasligi mumkin. Bu kamchiliklar dinamik
massivlardan foydalanish orqali bartaraf etiladi, chunki ular dastur
ishlashi jarayonida zarur boʻlganda kerak oʻlchamdagi massivlarni
yaratish va zarurat qolmaganda yoʻqotish imkoniyatini beradi.
Funksiyaga koʻrsatkich dastur joylashgan xotiradagi funksiya
kodining boshlangʻich adresini koʻrsatadi, yaʻni funksiya chaqirilganda
boshqaruv ayni shu adresga uzatiladi. Koʻrsatkich orqali funksiyani
oddiy yoki vositali chaqirish amalga oshirish mumkin. Bunda funksiya
uning nomi boʻyicha emas, balki funksiyaga koʻrsatuvchi oʻzgaruvchi
orqali chaqiriladi. Funksiyani boshqa funksiyaga argument sifatida
uzatish ham funksiya koʻrsatkichi orqali bajariladi. Funksiyaga
koʻrsatkichning yozilish sintaksisi quyidagicha:

Download 166.52 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




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