Continue operatori. Tsikl bajarilishiga ta'sir o’tkazishga imkon beradigan yana bir operator Continue operatoridir. Bu operator tsikl qadamini bajarilishini tuhtatib for va while da ko’rsatilgan shartli tekshirishga o’tkazadi.
Qo’yidagi misolda ketma-ket kiritilayotgan sonlarning faqat musbatlarining yig’indisini hisoblaydi. Sonlarni kiritish 0 soni kiritilguncha davom etadi.
# include
void main()
{ double s, x;
int x;
Cout<<(“\n 0 bilan tugallanuvchi sonlar katorini kiriting \n”);
for (x=1.0; s=0.0; k=0; x!=0.0);
{ Cin>>(“%lf”, &x);
if (x<=0.0) continue;
k++; s+=x;
}
Cout<<“\n summa=”<
}
O’tish operatori GO TO.
O’tish operatorining ko’rinishi:
Go to . Bu operator identifikator bilan belgilangan operatorga o’tish kerakligini ko’rsatadi.
Misol uchun goto A1;…;A1:y=5;
Strukturali dasturlashda Go to operatoridan foydalanmaslik maslahat beriladi. Lekin ba'zi hollarda o’tish operatoridan foydalanish dasturlashni osonlashtiradi.
Misol uchun bir necha tsikldan birdan chiqish kerak bo’lib qolganda , tug’ridan-tugri break operatorini qo’llab bo’lmaydi, chunki u faqat eng ichki tsikldan chiqishga imkon beradi.
Quyidagi misolda n ta qatorga n tadan musbat son kiritiladi. Agar n yoki sonlardan biri manfiy bo’lsa, kiritish qaytariladi:
# include
int n, I, j, k;
M1: Cout<<“\n n=”; Cin>>n;
If (n<=0) { Cout<<“\n hato! n>0 bulishi kerak”;
Go to M1;} ;
M: Cout<<“x sonlarni kiriting \n”;
For (I=1; I<=10; I++) {Cout<<“\n I=”<< i;
For (j=1 ; j<=10; j++) {Cin>> k;
if (k<=0) goto M;}
}
Bu masalani GOTO operatorisiz hal qilish uchun qo’shimcha o’zgaruvchi kiritish lozimdir.
# include
int n, I, j, k;
while 1 {
Cout<<“\n n=”; Cin>>n;
if (n>0) break;
Cout<<“\n hato! n>0 bulishi kerak”;
} ;
int M=0;
While M
{ M=0;
Cout<<“x sonlarni kiriting \n”;
For (I=1; I<=10; I++) {
If (M) break;
Cout<<(“\n I=%, i);
For (j=1 ; j<=10; j++) {Cin>>(“%f”, k);
if (k<=0) {M=1;break;}
}
Dostları ilə paylaş: |