Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

11-AMELIY

.pdf
Скачиваний:
0
Добавлен:
05.11.2025
Размер:
193.99 Кб
Скачать

11-ámeliy jumıs. Kóp ólshemli massivler. Elementlerdi izlew usılı. Elementler ústinde ámellerdi kórsetiw.

Jumıstıń maqseti: C++ tilinde kóp ólshemli (eki ólshemli) massivlerdi járiyalaw, olardıń elementlerin qayta islew, izlew hám olar ústinde ápiwayı ámellerdi orınlawdı úyreniw.

Teoriyalıq maǵlıwmatlar:

Kóp ólshemli massivler - bul bir at penen járiyalanǵan hám bir neshe indeksler menen kórsetiletuǵın bir tiptegi elementlerdiń tártiplestirilgen jıynaǵı bolıp tabıladı. Ádette, programmalastırıwda eki ólshemli massivler (matritsalar) jiyi qollanıladı. Eki ólshemli massivti qatar hám baǵanalardan ibarat keste retinde kóz aldımızǵa keltiriw múmkin.

C++ tilinde eki ólshemli massivti járiyalaw ushın tómendegi sintaksisten paydalanıladı:

element_tipi massiv_atı[qatarlar_sanı][baǵanalar_sanı];

Mısalı, 3 qatar hám 4 baǵanadan ibarat pútin sanlı massivti tómendegishe járiyalaw múmkin:

int matrix[3][4];

Massiv elementlerine qatlam (dostup) alıw ushın onıń qatar hám baǵana indeksleri kórsetiledi. C++ tilinde indekslew 0 den baslanadı. Mısalı, matrix[1][2] massivtiń ekinshi qatarı hám úshinshi baǵanasında jaylasqan elementke silteme beredi.

Ámeliy kórsetpeler, mısallar:

1-Mısal: Eki ólshemli massivti klaviaturadan kirgiziw hám ekranga shıǵarıw

Bul ápiwayı mısalda biz paydalanıwshıdan massivtiń ólshemlerin hám elementlerin soraymız, keyin bolsa sol massivti keste kórinisinde ekranǵa shıǵaramız.

#include <iostream>

using namespace std;

int main() {

int qatarlar, baganalar;

cout << "Qatarlar sanın kirgiziń: "; cin >> qatarlar;

cout << "Baǵanalar sanın kirgiziń: ";

cin >> baganalar;

// Massivti járiyalaw

int matrix[qatarlar][baganalar];

//Massiv elementlerin klaviaturadan kirgiziw cout << "Massiv elementlerin kirgiziń:" << endl; for (int i = 0; i < qatarlar; i++) {

for (int j = 0; j < baganalar; j++) {

cout << "matrix[" << i << "][" << j << "] = "; cin >> matrix[i][j];

}

}

//Massivti ekranga shıǵarıw

cout << "\nKirgizilgen massiv:" << endl; for (int i = 0; i < qatarlar; i++) {

for (int j = 0; j < baganalar; j++) { cout << matrix[i][j] << "\t";

}

cout << endl;

}

return 0;

}

2-Mısal: Eki ólshemli massivten elementti izlew

Bul tapsırmada biz massivten berilgen elementti izleymiz. Eger element tabılsa, onıń indekslerin (qatar hám baǵana nomerin) ekranǵa shıǵaramız.

#include <iostream>

using namespace std;

int main() {

int matrix[3][4] = { {11, 22, 33, 44}, {55, 66, 77, 88}, {99, 10, 21, 32}

};

int izleniwshi_san; bool tabıldı = false;

int tabılǵan_qatar, tabılǵan_baǵana;

cout << "Izleniwshi sandı kirgiziń: "; cin >> izleniwshi_san;

// Elementti izlew

for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) {

if (matrix[i][j] == izleniwshi_san) { tabıldı = true;

tabılǵan_qatar = i; tabılǵan_baǵana = j;

break; // Element tabılǵan soń ishki cikldı toqtatamız

}

}

if (tabıldı) {

break; // Element tabılǵan soń sırtqı cikldı da toqtatamız

}

}

// Nátiyjeni shıǵarıw if (tabıldı) {

cout << izleniwshi_san << " sanı massivtiń " << tabılǵan_qatar << "-qatarında hám " << tabılǵan_baǵana << "-baǵanasında

jaylasqan." << endl; } else {

cout << izleniwshi_san << " sanı massivte tabılmadı." << endl;

}

return 0;

}

3-Mısal: Massiv elementleri ústinde ámeller (qosıw)

Bul mısalda biz eki birdey ólshemli massivti (matritsanı) qosamız hám nátiyjesin jańa massivke jazamız. Eki matritsanı qosıw ushın olardıń sáykes elementleri qosıladı.

#include <iostream>

using namespace std;

int main() {

int matrixA[2][3] = { {1, 2, 3}, {4, 5, 6} }; int matrixB[2][3] = { {7, 8, 9}, {10, 11, 12} }; int qosındı[2][3];

// Matritsalardı qosıw

for (int i = 0; i < 2; i++) { for (int j = 0; j < 3; j++) {

qosındı[i][j] = matrixA[i][j] + matrixB[i][j];

}

}

// Nátiyjeni ekranga shıǵarıw

cout << "Eki massivtiń qosındısı:" << endl; for (int i = 0; i < 2; i++) {

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

cout << qosındı[i][j] << "\t";

}

cout << endl;

}

return 0;

}

4-Mısal: Massivtiń bas diagonali elementleriniń qosındısın tabıw

Kvadrat matricanıń (qatarlar hám baǵanalar sanı teń bolǵan) bas diagonalı dep, qatar hám baǵana indeksleri birdey bolǵan elementlerine aytıladı (mısalı, a[0][0], a[1][1], ...).

#include <iostream>

using namespace std;

int main() { int n;

cout << "Kvadrat matricanıń ólshemin kirgiziń (n x n): "; cin >> n;

int matrix[n][n];

cout << "Matritsa elementlerin kirgiziń:" << endl; for (int i = 0; i < n; i++) {

for (int j = 0; j < n; j++) { cin >> matrix[i][j];

}

}

int qosındı = 0;

// Bas diagonal elementleriniń qosındısın esaplaw for (int i = 0; i < n; i++) {

qosındı += matrix[i][i];

}

cout << "Matritsanıń bas diagonali elementleriniń qosındısı: " << qosındı << endl;

return 0;

}

Ózbetinshe orınlaw ushın tapsırmalar:

1.Berilgen 3x3 ólshemli pútin sanlı massivtiń hár bir qatarındaǵı eń úlken elementti tabatuǵın programma dúziń.

2.Eki 2x2 ólshemli matricanı kóbeytiwshi programma dúziń.

3.Berilgen 4x4 ólshemli massivtiń qosımsha diagonali (indeksleri jıyındısı n-1 ge teń bolǵan elementler) elementleriniń kóbeymesin tabıń.

4.Paydalanıwshı tárepinen kirgizilgen qatar hám baǵana nomeri boyınsha massivtiń sáykes qatarı hám baǵanasındaǵı barlıq elementlerdiń qosındısın esaplaytuǵın programma dúziń.

Соседние файлы в предмете Программирование на C++