Joylashtirilgan (ichki o`tgan) sikllar
Sillarni joylashtirish (sikllarni ichki o`tishi) bir sikl ichidagi bir yoki bir qancha sikllarni anglatadi. Lekin yodda saqlash kerakki joylashtirilgan siklda ichki sikl tashqi sikldan oldin tugallanishi kerak. Misol uchun,
int i,num,sum;
for(i = 1; i < = 5; + + i) // tashqi sikl
{
cout << '1 ';
sum=l;
for(num =2; num < = i; + + num) // ichki sikl
{
sout<
sum + =num;
}
cout<<"="<
}
Bu erda ichki for sikli i > = 2 qiymat uchun bajariladi. Ichki sikl num = i holatga ko`ra i = 2 uchun bir marta (yani, 2 < = 2 bir martani anglatadi) i = 3 uchun ikki marta, i = 4 uchun uch marta va i = 5 uchun to`rt marta bajariladi. Joylashtirilgan sikllar bilan ishlaganda bir muhim narsani esda saqlash kerakki, tashqi sikl nazorat o`zgaruvchining qiymati faqat ichki sikl to`liq bajarilgandan keyin o`zgaradi.
Yuqoridagi dastur segmentining chiqishini topishga harakat qiling.
Keling endi joylashtirilgan sikllardan foydalanib pastda berilgan n chiziqlarning namuna yaratish uchun dastur yozamiz:
A
ABC
ABCDE
ABCDEFG
…
n lines
Quyidagi dastur yuqorida ko`rsatilgan namunaning belgilarini yaratish uchun joylashtirilgan sikllardan foydalanishni izohlab beradi:
3-dastur
//Print design
#include< iostream.h >
#include
void main( )
{
int n,i,j,space;
char ch;
clrscr( );
cout<<"Enter the value of n < = 1 3\n\nU;
cin >> n;
cout << "\nDesired Pattern is\n\nU;
for(i=l;i< =n;+ +i)
{
for(space = 1 ;space < = n-i; + + space)
cout<< ' ';
ch = 'A';
for(j=l;j< =2*i-l;+ +j)
{
sout<
ch+ +;
}
cout<
}
getch( ); //freeze the monitor
}
Output
Enter the value of n < = 13
9
Desired Pattern is
A
ABC
ABCDE
ABCDEFC
ABCDEFCHI
ABCDEFCHIJK
ABCDEFCHljKLM
ABCDEFCHIJKLMNO
ABCDEFCHIJKLMNOPQ
Sikllarni taqqoslash
C++ da siklni tanlash kriteriyasi biroz ixtiyoriy. Qaysi sikldan foydalanish doimiy, o`zgarmas qoidalarga qaraganda ko`proq uslubning masalasi hisoblanadi. Siz aslida deyarli har qanday vaziyatda istalgan sikl turlarini ishlatishingiz mumkin. Siz dasturingizni rioya qilish uchun eng aniq va oson qiladigan turni tanlashingiz kerak. 1 – jadvalda C++ dagi sikllarning taqqoslanishi keltirilgan.
10.1 – jadval. C++ da sikl nazorat tuzilmalarining taqqoslanishi.
№
|
While_sikli___do-while_sikli'>For sikli
|
While sikli
|
do-while sikli
|
|
For sikli siklning boshida baholanadigan holatga qarab blok operatorini bajarish va takrorlash uchun foydalaniladi. Misol:
int i;
for(i-1; i< -5; + +i)
{
sum - sum + I;
}
|
While sikli siklning boshida baholanadigan holatga qarab blok operatorini bajarish va takrorlash uchun foydalaniladi. Misol:
int i = 1;
while(i < = 5)
{
sum = sum + i;
+ +i;
}
|
|
Dostları ilə paylaş: |