int main()
{
int counter=0;
int max;
cout<< “How many hellos?”;
cin>> max;
for( ; ; )
{
if (counter
{
cout << “Hello! \h”;
counter++;
}
else
break;
}
return 0;
}
НАТИЖА:
How many hellos? 3
Hello!
Hello!
Hello!
for циклининг танаси бўш бўлган ҳолда қўлланилиши
Циклда for оператори орқали унинг танасига ҳеч қандай оператор ёзмасдан туриб ҳам бирор бир амални бемалол бажариш мумкин. Бунда цикл танаси бўш сатрдан иборат бўлади. Танаси бўш бўлган for циклига мисол 7.13. – листингда келтирилган.
For циклининг танаси бўш бўлган ҳолда қўлланилиши
include< iostream. h>
int main()
{
for (int i=0; i<5; cout<< “i” <
;
return 0;
}
HАТИЖА:
i: 0
i: 1
i: 2
i: 3
i: 4
Ички цикллар
Бошқа циклнинг ичида ташкил этилган цикл ички цикл деб айтилади. Бу ҳолда ички цикл ташқи циклни ҳар бир итерациясида тўлиқ бажарилади. Юыоридаааги дастурда матрица элементларини ички цикл орқали тўлдирилиши намойиш қилинган.
Ички циклларга мисол
1. include< iostream. h>
int main()
{ int rows, columns;
char theChar;
cout << “How many rovs?”;
cin >> rows;
cout << “How many columns?”;
cin >> columns;
cout << “What character?”;
cin>>theChar;
for ( int i=0; i
{
for (int j=0; j
cout << the char;
cout<< “\n”;
}
return 0;
}
HАТИЖА:
How many rows? 4
How many columns? 12
What character? x
х x x x x x x x x x x x
for цикл счётчигининг кўриниш соҳаси
ANSI нинг янги стандарти бўйича циклда эълон қилинган ўзгарувчининг кўриниш соҳаси фақат цикл ичидангина иборат. Лекин кўпгина компиляторлар эски стандартларни ҳам қўллаб – кувватлайдилар. Қуйида келтирилган дастур кодини киритиб ўзингизнинг компиляторингиз янги стандартга мос келиш- келмаслигини текширишингиз мумкин.
include
int main()
{ for ( int i = 0; i<5; i++ )
{ cout << “ i: ” << i << endl ;
}
i=7; // i кўриниш соҳaси чегарасидан ташқарида
return 0;
}
Агарда бу дастур хатоликсиз компиляция қилинса демак у ANSI нинг янги стандартини қўллаб - қувватламайди. Янги стандартга мувофиқ компиляторлар i=7 ифода учун хатолик хақида хабар бериши керак. Дастур кодига озгина ўзгартириш киритилганда сўнг дастур барча компиляторлар учун хатоликсиз ишлайди.
include< iostream. h>
int main ()
{int i;
for ( int i = 0; i<5; i++ )
{cout << “ i: ” << i << endl ;
}
i=7; //Энди i барча компиляторлар томонидан //хатоликсиз қабул қилиниши мумкин.
Қаторлар йиғиндисини ҳисоблаш алгоритмлари
Циклик жараёнлар учун реккурент формулалар
Реккурент формулаларнинг қуйидаги формалари мавжуд:
а)
бу умумий кўриниши бўйича с) кўринишга мансуб бўлганлиги учун, реккурент формула бўйича ҳисоблаш
Сn =(-1) – мақсадга мувофиқ
(Сn =-Сn-1); n/n-1 sin nx
У холда, an=Cn n/n2-1 sinnx; Сn =-Сn-1; бу ерда n=2,3,…..25; С1 =-1 ва ҳисоблаш S=S+C n/n2-1 sin nx . бу ерда S- ҳар хил қийматга эга бўлади, яъни ўнг томондаги S (Sn-1) ни қийматини, чап томон навбатдаги қийматни қабул қилади Sn+1 ни.
Мисол3. Қаторлар йиғиндисини аниқликда ҳисоблаш дастурини тузинг.
Дастури. (Паскал дастурлаш тилида).
uses crt;
var y,s,x,eps:real;
n:integer;
begin clrscr;
readln(x,eps);
y:=1; s:=1; n:=1;
Repeat
y:=y*(- x*x/(2*n+(2*n+(2*n-1))));
s:=s+y; n:=n+1;
Until y
writeln(‘s );
S: =12 +22 +32 +..+ n2 йиғиндини ҳисоблаш алгоритми ва
дастурини тузинг.
{қаторлар йиғиндиси}
#include
#include
using namespace std;
void main()
{
const double pi=3.14159265;
double s=0,x,y,k=1,i;
cout<<"x ni qiymatini kiriting : \n";
cin>>x;cout<<"\n";
if ((x>=0.1) && (x<=0.8))
{
for (i=1;i<=10000;i++)
{
k=k*x;
s=s+k*sin(i*(pi/4));
}
y=(x*sin(pi/4))/(1-2*x*cos(pi/4)+x*x);
cout<<"Summa:\n";cout<<"s= "<
cout<<"Formula:\n";cout<<"y= "<
}
else cout<<"0.1 va 0.8 oraliqda kiriting !!! ";
}
Бундан ташқари қаторлар йиғиндисини аниқлашда бир неча мисоларни келтиришимиз мумкин:
{Циклик жараёнлар}
#include
#include
using namespace std;
void main()
{
double p,s=0,f1,f2,n,m;
for(n=1;n<=4;n++)
{
p=1;
for(m=1;m<=5;m++)
{
f1=sqrt(abs(exp(m*log(n))+exp(n*log(m))));
f2=exp(m*log(n))+exp(n*log(m));
p=p*(f1/f2);
}
s=s+p;
}
cout<<"Natija : \n";
cout<<"s= "< } }
Mavzuni jonlantirish uchun savollar
C++ tilida Tsikllar nima va ular qanday ishlatiladi?
C++ tilidagi old shartli sikl operatorining umumiy ko’rinishini ayting?
C++ tilidagi so’ng shartli sikl operatorining umumiy ko’rinishini ayting?
C++ tilidagi parametrik shartli sikl operatorining umumiy ko’rinishini ayting?
Foydalanilgan adabiyotlar
1.M.Ashurov, N.Mirzahmedova, N.Xaytullayeva. Algoritmlash va dasturlash asoslari. Uslubiy qo‘llanma. T. : “Bayoz”, 2016 y.
2.R. Azamatov, B. Boltayev. Algoritmlash va dasturlash asoslari. O‘quv qo‘llanma. T. : “Cho‘lpon”, 2013 y.
3.Sh. I. Razzoqov, M. J. Yunusova. Dasturlash: Kasb-hunar kollejlari uchun o‘quv qo‘llanma. T. : “Ilim Ziyo”, 2011y.
4.Nazirov Sh.A., Qobulov R.V., Bobojanov M.R., Raxmanov Q.S. С va С++ tili. “Voris-nashriyot” MCHJ, Toshkent 2013. 488 b.
Do'stlaringiz bilan baham: