С ПРОГРАММАЛАУ ТІЛІНІҢ ЦИКЛДІК ОПЕРАТОРЛАРЫ. КҮРДЕЛІ ЦИКЛДЕР


Жұмыс түрі:  Материал
Тегін:  Антиплагиат
Көлемі: 6 бет
Таңдаулыға:   

6-7 дәрістер. С++ ПРОГРАММАЛАУ ТІЛІНІҢ ЦИКЛДІК ОПЕРАТОРЛАРЫ. КҮРДЕЛІ ЦИКЛДЕР.

Цикл операторлары бірнеше рет қайталанатын есептеулерді орындау үшін қажет. Кез келген цикл сол цикл тұлғасынан (денесінен), яғни қайталанатын операторлар тізбегінен, бастапқы мәндер тағайындаудан, цикл параметрлерін өзгертуден және циклді қайталау шартын тексеруден тұрады (7. 1 сурет) . Циклдің бір рет орындалуы итерация (қадам) деп аталады. Шартты тексеру әрбір итерация сайын - цикл тұлғасына дейін (алғы шартты цикл) немесе цикл тұлғасынан соң (соңғы шартты цикл) атқарылады. Олардың айырмашылығы - соңғы шартты цикл, кем дегенде, бір рет орындалады да, содан кейін барып циклді қайталау шарты тексеріледі. Ал, алғы шартты циклде оны қайталау шарты цикл тұлғасынан бұрын тексеріледі, сондықтан кейде ол бір рет те орындалмай қалуы мүмкін.

+

-

-

Бастапқы

мәндер

Шарт?

Циклпараметрін өзгерту

Операторлар

Бастапқы

мәндер

Шарт?

Операторлар

Циклпараметрін өзгерту

+

а ә

б

а

1-сурет. Цикл операторларының құрылымдық схемасы:

а - алғы шартты цикл; ә - соңғы шартты цикл

Цикл тұлғасында мәні өзгертілетін айнымалылар цикл параметрлері болып табылады. Тұрақты қадаммен әрбір итерация сайын өзгертіліп отырылатын бүтін типтегі цик­л парараметрлері цикл санауыштары деп аталадлы .

Бастапқы параметрлер мәндері айқын түрде берілмеуі де мүмкін, олар циклге кір­ген­ге дейін оның ішінде мәндері өзертілетін айнымалылар мәндерін беру үшін қажет.

Цикл оны қайталау шарты орындалмаған кезде аяқталады. Цикл қадамының немесе жалпы циклдің аяғына жетпей, доғарылатын кездері болады, олар break, conti­nue, return және goto операторлары көмегімен іске асырылады. Сырттан цикл ішіне басқаруды беру болмауы тиіс.

С/C++ тілдерінде ыңғайлылығына қарай қолданылатын үш түрлі цикл оператор­лары бар, олар - while, do . . while және for.

Алғы шартты цикл (while - әзірше)

Орындалу саны алдын ала белгісіз болатын циклдер құру кезінде шарттары алдын ала немесе соңынан тексерілетін екі цикл түрі бар. Шарты алдын ала тексерілетін цикл операторының орындалу схе­масы 7. 1а-суретте көрсетілген. Оның жазылуы:

while (шарт-өрнек) оператор;

Мұнда шарт ретінде қатынас таңбалары кіретін шартты өрнек пайдаланылуы мүмкін. Өрнек типі арифметикалық немесе соған келтірілетін түрде болуы тиіс. Опера­тор қарапайым немесе құрама болуы мүмкін. Ол құрама оператор болса, онда операторлар жиыны жүйелі жақшаға алынып жазылады. While операторы орындал­ғанда, алдымен жақша ішіндегі өрнек есептеліп тексеріледі. Егер өрнек мәні ақиқат болса немесе жалпы жағдайда 0-ге тең болмаса, онда оператор атқары­лады. Содан соң жақшадағы өрнек тағы да есеп­теледі. Егер өрнек мәні жалған болса (немесе жалпы жағдайда 0-ге тең болса), онда while цикл операторы өз жұмысын аяқтайды.

Мұнда шарт-өрнек құрамына кіретін айнымалы цикл ішінде өзге­ріп отырады.

1-мысал (7. 2 сурет) .

2-сурет. Бүтін сандарды қосу алгоритмі

Басы

s=0

k=1

жоқ

k≤100

s=s+k

k=k+1

s

Соңы

иә

/* 1-ден 100-ге дейінгі бүтін

сандар қосындысы */

#include<iostream>

#include <stdio. h>

#include <conio. h>

main ()

{

S
k
S: 6
k: 101

int s, k;

s=0; k=1;

while (k<=100)

{ s=s+k;

k++;

}

cout<<"s= %d"<<s;

cout<<"\nАяқтау үшін Enter басыңыз\n";

return 0;

}

S=1+2+3+4+5+6+…+100=

6-мысал . y=-2. 4 x 2 +5 x -3 функциясы мәндерін оның аргументі х 0 -ден х k -ға дейін қадамы dx бол­ып өзгерген кез­дерде анықтау керек. Мұнда программа С тілі стилінде жазылып, цикл ал­дын­да параметрге алғашқы мән меншікте­леді де, параметр цикл ішінде берілген қадамға өзгеріп оты­рады (7. 3-сурет) . Жал­пы функция кез келген түрде беріле алады. Ол параметр мәніне байланысты тармақ­талып кететін функция да болуы мүмкін.

басы

х =x 0

жоқ

иә

x≤x k

y=f(x)

x=x+dx

x, y

соңы

x 0 , x k , dx енгізу

3-сурет. Функция мәндерін есептеу алгоритмі

/* х тұрақты қадаммен х0-ден хk-ға дейін өзгергенде, функция мәндері кестесін алу, х0, хk, dx (қадам) перне­лерден енгізіледі */

#include<iostream>

#include <stdio. h>

#include <math. h>

#include <conio. h>

using namespace std;

int main()

{ float x, y, x0, xk, dx;

cout<<"х-тің бастапқы, соңғы мәндері:";

cin>>&x0;

cin>>&xk;

cout<<"х-тің өзгеру қадамы dх: ";

cin>>dx;

cout<<"\n";

cout<<" x y\n";

cout<<"\n";

x=x0;

while (x<=xk)

{y=-2. 4*x*x+5*x-3*sqrt(fabs(x) ) ;

cout<<"x= y="<<x, y;

x+=dx;

}

cout<<"\n";

return 0;

}

Келесі мысалда енгізілген num бүтін санының барлық бөлгіштері С++ тілі стилінде анықталады.

// Бүтін оң санның бөлгіштерін анықтау

#include <iostream>

using namespace std;

int main()

{int num;

cout << "\nSan engizingiz : "; cin >> num;
int half = num/2; // санның жартысы

int div = 2; // алғашқы бөлгіш санды таңдау

while (div<= half) {

if (!(num % div) ) cout << div <<"\n";

div++;

}

return 0;

}

Программалауда жиі қолданылатын тәсілдердің бірі- шексіз цикл ұйымдас­тырып, одан белгілі бір шарт бойынша шығу болып табылады, ол үшін цикл басында while (true) немесе while (1) сөздері жазылады. While түйінді сөзінен кейінгі жақша ішіне циклде ғана қолданылатын айнымалыны сипаттауды жазып қоюға болады, мысалы:

while (int x = 0) {… /* x-тің пайдаланылу аймағы */ }

Соңғы шартты цикл (do . . while)

while

жоқ

иә

шарт?

1-оператор

do

2-оператор

n-оператор

4-сурет. Шарты соңы­­­нан тексерілетін цикл

Шарты соңынан тексерілетін do . . while(орындау . . әзірше) циклі­нің орындалу схе­масы 7. 4-суретте көрсе­тіл­ген. Осыған сәй­кес оператордың жалпы жазылу түрі:

do

{1-оператор;

2-оператор;

… … …

n-оператор;

}

while (өрнек) ;

Цикл тұлғасы ретінде қарапайым немесе құрама оператор қолданылуы мүмкін. Жақ­шадағы өрнек цикл тұлғасынан кейін тек­серіледі. Сондықтан do while цикл тұл­ға­сы ең болмағанда бір рет орындалады. Цикл тұлғасы­нан кейін жазылған өрнек ақиқат болса (яғни ол 0-ге тең болмаса), цикл тұлғасы қайтадан орындалады. Ал өрнек жалған болса (немесе 0-ге тең болса), цикл аяқталады. Өрнек типі арифметикалық немесе соған келтірілетін типте болуы тиіс.

Енді мысалдар келтірейік.

7-мысал.

// Енгізілген сандардың үлкенін (максимумын) табу

#include <stdio. h>

#include <conio. h>

using namespace std;

int main()

{int a, max;

cout<<"\n Сандар максимумын табу \n";

cout<<"Аяқтау үшін 0 енгізіңіз \n";

max = -32000;

// алдын ала максимумды ең кіші бүтінге теңейміз

do

{ cout<<"Сан енгізіңіз : ";

cin>>a;

if (a > max) max = a;

}

while (a!=0) ;

cout<<"Сандардың максимумы: %i"<<max;

return 0;

}

FOR цикл операторы

For операторы айнымалы ретінде берілген цикл параметрінің алғашқы, соңғы мәні мен өзгеру қадамы белгілі болғанда, соған сәйкес бір немесе бірнеше операторларды қайталап орындау кезінде қолда­нылады. Бұл оператор параметрлі цикл операторы немесе арифмети­калық цикл деп аталады.

Параметрлі циклдің орындалу схемасы 7. 5-суретте келтірілген. For операторының жалпы жазылу түрі:

5-сурет. For циклінің орындалу схемасы

x < = xk

x = x0, xk, dx

1 оператор;

2 оператор;

n оператор;

x > xk

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Си тіліндегі циклдік алгоритм және циклдік алгоритмді бағдарламау
Паскаль тілінде циклдік операторлармен жұмыс
Алгоритмдік тілдің негізгі мінездемелері. Алфавиті, ережелері және мәліметтер типтері
Циклдік құрылымды алгоритмді программалау
Паскаль – бағдарламалау тілі
Қайталану командалары
Турбо Паскаль бағдарламасының жазу ережелері, құрылымы және тілдің әліпбиі
Алгоритм, программа ұғымдары
Алгоритмдер теориясы
Turbo Pascal – дің жоғарғы деңгейлі логикалық құрылымы
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz