Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
v_vide_shpor.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
276.8 Кб
Скачать

10. Goto, Break, continue, return басқаруды беру операторлары

С++ тілінде 4 басқаруды беру операторы бар:

  • goto шартсыз өту операторы;

  • break циклдан шығу операторы;

  • continue циклдың келесі итерациясына көшу операторы;

  • return функциядан қайтару операторы.

Циклдік операторлар: while, do while, for.

Басқаруды беру операторлары: goto, break

goto шартсыз өту операторының форматы: goto <белгі>;

мұндағы белгі – оператор нөміріне ұқсас ерекше белгі, яғни идентификатор. Бұл оператор бірінің ішіне бірі енгізілген бірнеше цикл жиынынан (мəлімет-тер арасында қателер кездессе) бірден сыртқа шығып кету керек болған кезде қолданылады. Мұндайда break операторын пайдалана алмаймыз.

break циклдан шығу операторы цикл операторларының ішінде қолданылады немесе switch операторынан шығуды қамтамасыз етеді. Егер бұл оператор бірінің ішіне бірі енгізілген қабаттасқан цикл ішінде орналасса, онда ол ішкі циклдан оның сыртқы циклына шығуды ғана жүзеге асырады.

continue циклдың келесі итерациясына көшу операторы цикл денесінің аяғына дейінгі операторларды бос жіберіп, басқаруды келесі итерацияға береді.

return функциядан қайтару операторы функцияның орындалуын аяқтап, басқаруды шақыру нүктесіне береді

11.Нұсқауыштар мен жиымдар. Екі өлшемді жиымдар.

Компьютер жадысындағы әрбір байттың өз қайталанбайтын адресі болады. Тізбектелген байттардың тізбектелген адресі болады. Егер берілген байт адресі N болса, алдыңғы байттың адресі N -1, ал келесінікі N+1 болады.Нұсқауыш – бұл кейбір мәліметтердің адресін сақтайтын айнымалы. Нұсқауышты пайдалану көмегімен бағдарламаның орындалу барысында жаңа айнымалыларды құруға болады. Жады көлемін (байтта) сұратып, нұсқауышқа байт адресін сақтауға болады. Бұл тәсілді динамикалық тарату деп те атайды.

Келесі бағдарламаны қарастырайық:

main()

Int ivar,*iptr;

iptr = &ivar;

ivar = 421;

printf("Размещение ivar: %p\n",&ivar);

printf("Содержимое ivar: %d\n", ivar);

printf("Содержимое iptr: %p\n", iptr);

printf("Адресуемое значение: %d\n",*iptr);

Бір типті шамалардың тізбегі жиым деп аталады. Сипатталуы:тип жиым_аты [өлшемі]; float a[10]; // 10 нақты саннан тұратын бір өлшемді жиым.Жиым элементтері нөлден бастап нөмірленеді. Инициализацияланатын мәндері жүйелі жақшаға алынады.Мысалы:

int b[5]= {3, 2, 1}; Жиымның қасиеттерін анықтайтын 4 негізгі қағида: - жиымда элементтер деп аталатын мәндер сақталады; - жиымның барлық элементтері бір типті болуы керек;-жадыда жиымның барлық элементі тізбектеліп орналасады; -бірінші элемент адрестің нөлдік индексін қабылдайды.Жиым элементтерін енгізу:1-жолы:cin>>size; // жиым элементтерінің саны

for(i=0;i<=size;i++)

cin>>a[i];// пернетақтадан кезекті элементті оқиды

2-жолы: random(k) кездейсоқ сандар генераторын қолданып, жиым элементтерін енгізуге болады.

int array[n]; int i;

k=100;

randomize(); // кездейсоқ сандар генераторының инициализациясы

for(i=0;i<n;i++)

array[i]=random(k);

Теріс сандарды да енгізу үшін:

array[i]=random(100)-10;

Мысалы: Бүтін санды бір өлшемді жиым берілген. Теріс элементтерінің қосындысын табу керек.

#include <iostream.h>

#include <math.h>

#define n 10

int main () {

int i, sum;

int a[n]={3, -4, 5, -12, 14};

for (i=0, sum=0; i<n; i++)

if (a[i]<0) sum+=a[i];

cout<<“\n Элементтер қосындысы: ”<<sum;

return 0;}

Нәтижесі: -16

Бір типті элементтер жиынтығын өңдеуде олардың жадыда санына қарай және элементтерін қолдану моделіне қарай анықтап сипаттау мүмкіндігі бар. Соған байланысты массивтің өлшемі анықталады деп есептеледі. Демек, индекстерінің көрсетілуіне қарай бір өлшемді, екі өлшемді т.с.с. массивтерді анықтауға болады. Екі немесе одан да көп өлшемді массивтер көп өлшемді массивтер деп аталады. Сәйкес өлшемде сипаттау үшін квадрат жақшаларда олардың өлшемдері көрсетіледі.

Көп өлшемді жиымдардың сипатталуы:

int a[m][n]; // бүтін саннан тұратын екі өлшемді жиым

Мұндағы, m-қатардың саны,n-бағананың саны

Мысалы, екі өлшемді жиым екі квадрат жақшамен анықталып, төмендегідей сипатталады:

float massiv [3][4];

Мұндағы, massiv жиым атауы, ал жиымның 12 элементі бар, жиым 0-ден 2-ге дейін индекстелетін 3 жолдан және 0-ден 3-ке дейін индекстелетін 4 бағаннан тұрады.

Мысалы: Бүтін санды екі өлшемді (3х3) жиым берілген. Табу керек:

  1. Екінші бағанадағы нөлдік элементтердің санын;

  2. Үшінші қатардағы теріс элементтердің көбейтіндісін.

5 0 9

4 -6 11

-3 2 -2

#include <iostream.h>

#include <math.h>

int main () { const int m=3, n=3;

int i,j,k=0, p=1;

cout<<“Жиым элементтерін енгізіңіз:”<<endl;

for (i=0; i<m; i++)

{for (j=0; j<n; j++)

cin>>a[i][j];}

for (i=0; i<3; i++)

{for (j=1; j<2; j++)

if (a[i][j]==0) k++;}

for (i=2; i<3; i++)

{for (j=0; j<3; j++)

if (a[i][j]<0) p*=a[i][j];}

cout<<“\n k= ”<<k<<endl;

cout<<“\n p=”<<p<<endl;

return 0;}

Нәтижесі: k=1; p=6

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]