Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ivanyuk_Zvit.docx
Скачиваний:
9
Добавлен:
12.05.2015
Размер:
1.59 Mб
Скачать

Практична робота 6 Програми для роботи з масивами даних

Завдання 6.1

Написати програму, для введення з клавіатури одномірного масиву з 5 цілих чисел, та виведення кількості ненульових елементів у ньому.

#include "stdafx.h"

#include <iostream>

#include <math.h>

#include <conio.h>

#include <stdlib.h>

#include <iomanip>

#include <stdio.h>

#include <time.h>

using namespace std;

void _tmain(int argc, _TCHAR* argv[])

{

srand((unsigned)time(NULL));

int ar[5];

int k = 0;;

for (int i = 0; i < 5; i++)

{

ar[i] = rand() % 10;

if (ar[i] != 0)

k++;

cout << ar[i] << " ";

}

cout << endl;

cout << "k=" << k << endl;

system("PAUSE");

}

Завдання 6.2

Знайти суму двох квадратних матриць.

#include "stdafx.h"

#include <iostream>

#include <math.h>

#include <conio.h>

#include <stdlib.h>

#include <iomanip>

#include <stdio.h>

#include <time.h>

using namespace std;

void _tmain(int argc, _TCHAR* argv[])

{

srand((unsigned)time(NULL));

int N, M;

cout << "N=";

cin >> N;

int A[10][10];

int B[10][10];

int C[10][10];

if (N <= 10)

{

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

A[i][j] = rand() % 10;

}

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

B[i][j] = rand() % 10;

}

}

system("cls");

cout << "Matrica A" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

cout << A[i][j] << " ";

}

cout << endl;

}

cout << "Matrica B" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

cout << B[i][j] << " ";

}

cout << endl;

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

C[i][j] = A[i][j] + B[i][j];

}

}

cout << " MatricaC(A + B)" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < N; j++)

{

cout << C[i][j] << " ";

}

cout << endl;

}

}

else cout << "ERROR -- N > 10" << endl;

system("PAUSE");

}

Завдання 6.3

Дано дві квадратні матриці А розміром та В розміром NxK. Обчислити матрицю С за формулою С = 2*A*B-B2.

#include "stdafx.h"

#include <iostream>

#include <math.h>

#include <conio.h>

#include <stdlib.h>

#include <iomanip>

#include <stdio.h>

#include <time.h>

using namespace std;

void _tmain(int argc, _TCHAR* argv[])

{

srand((unsigned)time(NULL));

int A[10][10];

int B[10][10];

int B1[10][10];

int C[10][10];

int N, M;

cout << "N=";

cin >> N;

cout << "M=";

cin >> M;

system("cls");

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

A[i][j] = rand() % 5;

B[i][j] = rand() % 5;

B1[i][j] = 0;

}

}

cout << "Matrica A" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

cout << A[i][j] << " ";

}

cout << endl;

}

cout << "Matrica B" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

cout << B[i][j] << " ";

}

cout << endl;

}

cout << "Matrica C(2*A*B - B^2)" << endl;

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

A[i][j] = 2 * A[i][j];

}

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

for (int k = 0; k < M; k++)

{

B1[i][j] += A[i][k] * B[k][j];

}

}

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

for (int k = 0; k < M; k++)

{

B[i][j] += B[i][k] * B[k][j];

}

}

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

C[i][j] = B1[i][j] - B[i][j];

}

}

for (int i = 0; i < N; i++)

{

for (int j = 0; j < M; j++)

{

cout << A[i][j] << " ";

}

cout << endl;

}

system("PAUSE");

}

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