Takrorlash operatori.
Yechilayotgan masalaning mohiyatiga qarab, dasturchi tuzuvchi o‘zi uchun qulay bo‘lgan takrorlash operatorini tanlab olishi mumkin.
Takrorlash operatorlarining 3 xil turi mavjud:
· parametrli takrorlash operatori;
· repeat takrorlash operatori;
· while takrorlash operatori.
Dasturlash jarayonida ayrim hollarda bir yoki bir necha amallarni bir necha marotaba takrorlab bajarish zarurati tug‘iladi. Masalan, 1+2+…+2011 yig‘indini hisoblashimiz hisoblash uchun quyidagi dastur tuzadigan bo‘lsak,
..
a:=1; S:=s+a;
a:=2; S:=s+a;
a:=3; S:=s+a;
a:=4; S:=s+a; va hokazo, ya’ni dasturimiz «uzundan-uzun» ko‘rinishga ega bo‘lar edi. E’tibor bilan qaraydigan bo‘lsak a-o‘zgaruvchi har safar 1-ga ortib borib, ega bo‘lgan qiymati S-ga qo‘shilmoqda. Aynan shunday hollar uchun parametrli sikllardan foydalanish dasturchining ishini yengillashtiradi.
Parametrik sikllarning umumiy ko‘rnishi quyidagicha:
For := to do
< operator yoki operatorlar>
Bu yerda a-parametr bosh qiymatiga, b-parametr oxirgi qiymatiga teng.
1-misol:
For i:=1 to 23 do
s:=s+1/I;
Siklning bu holatida parametr i-ning qiymati dastlab 1-ga teng bo‘lib, sungra siklning har bir qadamida ‘+1’-ga orta boradi va 2,3,…,23 ga teng bo‘ladi. Zarur hollarda parametrning qiymatini ‘-1’ ortttirish mumkin bo‘lib, bunda «to» o‘rniga «downto» ishlatiladi.
Misol-1. 1 dan 10 gacha bo’lgan sonlarni chiqaruvchi dastur tuzing.
#include
#include
using namespace std;
int main ()
{
for (int i =1; i<10; i++)
cout <
cout <
return 0;
}
Quyidagi yig’indini hisoblovchi dastur tuzing.
//’Takrorlanuvchi operatori’
#include
#include
using namespace std;
int main ()
{
float S=0;
for (float i = 1; i <=50; i++)
s+=1/i;
cout <return 0;
}
b) while sikli(takrorlanadigan amallar bajarilishi uchun avval shart tekshiriladi). Bu takrorlashning tuzilishi quyidagicha:
While d o
Bu yerda mantiqiy ifoda (shart) qiymati True bo‘lguncha sikl tanasidagi operatorlar bajariladi, aks hollarda sikl tanasidagi amallar bajarilmaydi.
While shartli tarorlash blok-sxemasi
|
Dastur-misol
|
|
var x:integer;
begin
x:=-5;
while (x<15) do
begin
write(sqr(x), ' ');
x:=x+2;
end;
end.
|
Dastur natijasi:
|
Misol. Kiritiladigan ixtiyoriy a,b,c sonlar uchun a+b>c, a+c>b, b+c>a tengsizliklarning barchasi bajarilganda «shartlar qanoatlantirilgan» deb javob beruvchi dastur yarating.
program r2;
uses crt;
var a,b,c,d:integer;
javob:string;
begin clrscr;
readln(a,b,c);
if (a+b>c) and (a+c>b) and (b+c>a) then
writeln('shartlar qanoatlantirilgan');
readln;
end.
Xulosa
Аmaliy muammolarni hal qilish uchun dasturiy ta'minot usullarining samaradorligi, ayniqsa, biz o`n qavatli binoga chiqish uchun ikki hil muammoga ya`ni, zinapoyada va liftda o'ninchi qavatga chiqish bilan to'qnash kelganimizda aniq namoyon bo'ladi. Ushbu ikki usulni boshdan kechirgan kishi tabiiy ravishda liftni tanlaydi. Shunga o'xshab, muammoni hal qilish uchun dasturiy ta'minot usullarini o'zlashtirganlar hamma joyda, masalan, muammoni hal qilishning dasturiy ta'minot usulini qo'llashga intilishadi. Buning uchun algoritmlarni loyihalash, ularni algoritmik dasturlash tillarida taqdim etish va EXM da dasturlarni qilish jarayonlarini o'zlashtirish kerak bo`ladi
Foydalanilgan adabiyotlar va internet havolalar
https://docs.microsoft.com/en-us/learn/modules/implement-manage-active-directory-certificate-services/
https://eugenpavlenko.wordpress.com/2011/11/04/active-directory-certification-services-%D1%87%D0%B0%D1%81%D1%82%D1%8C-1/
https://chmv.allnetic.com/article/ustanovka-roli-active-directory-certificate-services/
https://xakep.ru/2011/03/15/54800/
https://fedvte.usalearning.gov/courses/WOSS/course/videos/pdf/WOSS_D03_S01_T06_STEP.pdf
https://resources.jamf.com/documents/technical-papers/Integrating-with-AD-CS-Using-Jamf-Pro-10.6.0-or-Later.pdf
Windows Server 2008 Active Directory Certificate Services Step-By-Step Guide
Do'stlaringiz bilan baham: |