while konstruktsiyasidagi murakkab shartlar
1: include
2: int main()
3:{unsigned short кичик;
4:unsigned long катта;
5:const unsigned short MaxКичик=65535;
6:cout << “Кичик сонни киритинг:”;
cin >> кичик;
cout << “Катта сонни киритинг:”;
cin >> катта;
cout << “кичик сон:” << кичик << “…”;
//Xар бир итерацияда учта шарт текширилади.
while (кичик<катта && катта>0 &&
кичик< MaxКичик)
{
if(кичик%5000==0) //Xар 5000 сатрдан
//кейин нукта чиқарилади
cout<<“.” ;
kichik++;
katta-=2 ;
}
cout<<“\n кичик сон:”<<кичик<<“ катта сон :”
<<катта << endl ;
return 0 ;
}
НАТИЖА:
Кичик сонни кирит : 2
Катта сонни кирит : 100000
кичик: 2 ………
кичик сон :33335 катта сон : 33334
TAHLIL
Yuqorida keltirilgan dastur quyidagi mantiqiy o’yinni ifodalaydi. Oldin ikkita son – kichik va katta kiritiladi. Undan so’ng toki ular bir biriga teng bo’lmaguncha, ya’ni «uchrashmaguncha» kichik son birga oshiriladi, kattasi esa ikkiga kamaytiriladi. O’yinni maqsadi qiymatlar «uchrashadigan» sonni topishdir.
9 – 12 – catrlarda qiymatlar kiritiladi. 15 – satrda esa tsiklni davom ettirishning quyidagi uchta sharti tekshiriladi:
kichik o’zgaruvchisi qiymati katta o’zgaruvchisi qiymatidan oshmasligi.
katta o’zgaruvchisi qiymati manfiy va nolga teng emasligi.
o’zgaruvchisi qiymati MaxKichik qiymatidan oshib ketmasligi
17– satrda esa kichik soni 5000 ga bo’lingandagi qoldiq hisoblanadi. Agarda kichik 5000 ga qoldiqsiz bo’linsa bu operatsiyaning bajarilishi natijasi 0 ga teng bo’ladi. Bu holatda hisoblash jarayonini vizual ifodasi sifatida ekranga nuqta chiqariladi. Keyin esa kichik qiymati bittaga oshiriladi, katta qiymati esa 2 taga kamaytiriladi. Tsikl agarda tekshirish sharti tarkibidagi birorta shart bajarilmasa to’xtatiladi va boshqaruv 24 – satrga o’tadi.
Do'stlaringiz bilan baham: |