Курстық жұмыс н тарму 11/1 53-2018



бет9/11
Дата06.01.2022
өлшемі0,67 Mb.
#14295
1   2   3   4   5   6   7   8   9   10   11
Сілтеме сілтемені инициализациялауда көрсетілген атау синонимі түрінде көрсетіледі. Сілтемені көрсеткіш ретінде қарастыруға болады. Сілтеменің хабарлау форматы:

тип & аты;

мұндағы тип- сілтеме көрсетілген көлемнің типі, &- сілтеменің операторы, аты- көрсетілген ауыспалы сілтемелік типтің аты болады. Мысалы,

int kol;

int& pal=kol; //pal сілтемесі kol аты үшін альтернативті

const char& CR= ‘\n’; //тұрақтығы сілтеме

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

Сілтеме көрсеткішке қарағанда жадының қосымша көлемінде орын алмайды және көлемнің басқа қарапайым аты болады.

ТӘЖІРИБЕЛІК БӨЛІМ


2.1 Бағдарламалаудың алгоритмін құру
// new және delete операторларына мысал

#include "stdafx.h"

#include

using namespace std;

int main()

{

setlocale(LC_ALL,"Rus");



int i, n;

// массив элементтерінің санын енгізу

cout<<"n="; cin>>n;

//жады бөлу

int *a=new int[n];

cout<<"Массив элементтерін енгіз:\n";

//ввод массива

for (i=0; i

cin>>a[i];

//берілген массивті шығару

for (i=0; i

cout<

//массивті өзгерту

for (i=0; i

a[i]=-a[i];

//өзгертегн массивті шығару

for (i=0; i

cout<

//жадыны босату

delete []a;

system("pause");

return 0;



}

#include "stdafx.h"

#include

using namespace std;

int main()

{ int n;

cout < < " енгізгіңіз келетін сандар санын енгізіңіз: ";

cin >> n;

cout < < "енгізіңіз" < < < n < " сандар: ";

int *dinamich_array = new int [n]; / / құрамыз

// динамикалық массив

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

cin > > dinamich_array[i]; / / сандарды массив ұяшығына санаймыз

}

cout < < " енді массив элементтерін кері тәртіппен шығарайық: ";



for (int i = n - 1 ; i >= 0; i--) {

cout < < dinamich_array[i] <<"; / / барлық ұяшықтардың мәнін шығарамыз

}

cout < < endl < < " алапты алып тастаймыз!";



delete [] dinamich_array; // динамикалық массивін алып тастаймыз

return 0;



}

2.2 Бағдарламаның орындалуы және есептің шешімінің нәтижесін талдау


Динамикалық массивтер

Тапсырманы қою:



  1. Динамикалық бір өлшемді массив қалыптастыру, оны кездейсоқ сандармен толтыру және баспаға шығару.

  2. Нұсқада көрсетілген тапсырманы орындау және алынған массивті басып шығару.

  3. Динамикалық екі өлшемді массив қалыптастыру, оны кездейсоқ сандармен толтыру және баспаға шығару.

  4. Нұсқада көрсетілген тапсырманы орындау және алынған массивті басып шығару.

Табу керек:

  1. Бірінші жұп элементті жою.

  2. Берілген нөмірмен жолды қосу

Бағдарламада қолданылатын стандартты функциялардың сипаттамасы.

new-динамикалық жадты айнымалы ретінде таңдау.

delete-айнымалы динамикалық жадынан жою.



Есепті шешу үшін келесі функциялар құрылды:

Динамикалық жадты екі өлшемді массивпен бөлу функциясы

int** form_mass(int k,int r) {

int **mass=new int*[k];

for(int i=0;i

mass[i]=new int [r];



return mass;

};

Массивті қалыптастыру функциясы

void create_mass(int** mass, int k, int r)

{

for(int i=0;i

for(int j=0; j

mass[i][j]=rand()%50;



cout<<"massiv sformirovan\n";

};

Массивті басып шығару функциясы

void print_mass(int** mass, int k, int r)//

{

for(int i=0;i

{

cout<<"\n";

for(int j=0; j

cout<

}

cout<<"\n";



};

Массивтен тақ сандарды жою функциясы
void del_nech(int** mass, int** mass2, int k, int r)// {

for(int i=0;i

{

int j1=0;



for(int j=0; j

{

int t=mass[i][j]%2;



if (t==0)

{

mass2[i][j1]=mass[i][j];



j1++;

}

}



ҚОРЫТЫНДЫ


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

Курстық жұмыстың тақырыбы класстарды қолданып екі өлшемді матрицаларға әртүрлі операциялар қолдану болғандықтан массивтер мен класстарға байланысты тақырыптарға кішігірім тоқталып, сипаттама берілді. Жұмысымның бірінші бөлімінде С++ тілінің мүмкіндіктері, жалпы массивтер туралы, соның ішінде екі өлшемді массивтер, квадрат матрицалар, класстар туралы жазылды.

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

Мұнда матрицалармен қарапайым операцияларды орындау, атап айтқанда матрицаларды жинау және оларды көбейту мүмкіндігі қарастырылған арнайы бағдарламалық код жасаймыз. Дәлірек айтқанда, келесі міндеттерді шешеміз. Квадрат матрицалармен жұмыс істеу үшін класс құрылды. Матрица элементтері екі өлшемді массив-класс өрісі түрінде іске асырылады. Операторды нысандарды индексациялауға болатындай етіп қайта жүктейміз - тек енді екі индекс қолданылады, себебі объектінің тиісті өрісі екі өлшемді массив болып табылады. Матрицалардың сомасын есептеу үшін қосу операторын қайта жүктейміз, ал матрицалардың көбейтіндісін есептеу үшін көбейту операторын қайта жүктейміз. Бағдарламалық код мысал ретінде келтірілген.

Өз курстық жұмысымның тақырыбы бойынша осы бөлімде жете, әрі нақты мысалдар келтіріледі.



Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   11




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет