13. а) Матриця розміром 8 на 9 з елементів цілого типу в діапазоні [-90, 80];
b) Сформувати з вихідноï матриці вектор розмiрнiстю 9 на 1;
с) Елементами вектора е кількості додатних елементів відповідних стовпців вихідної матриці;
Ответы
Ответ:
а) Ви можете створити матрицю розміром 8 на 9 з елементами цілого типу в діапазоні [-90, 80], використовуючи масив в мові програмування C++:
```cpp
#include <iostream>
#include <cstdlib>
#include <ctime>
int main() {
const int rows = 8;
const int cols = 9;
const int lowerLimit = -90;
const int upperLimit = 80;
int matrix[rows][cols];
// ініціалізуємо генератор випадкових чисел
std::srand(std::time(0));
// заповнюємо матрицю випадковими числами
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
matrix[i][j] = std::rand() % (upperLimit - lowerLimit + 1) + lowerLimit;
}
}
// виводимо матрицю
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
```
б) Щоб сформувати вектор розміром 9 на 1 з вихідної матриці, вам потрібно витягнути елементи з відповідних стовпців і помістити їх у вектор. Ось приклад реалізації цього:
```cpp
#include <iostream>
#include <vector>
int main() {
const int rows = 8;
const int cols = 9;
const int lowerLimit = -90;
const int upperLimit = 80;
int matrix[rows][cols];
// ініціалізуємо генератор випадкових чисел
std::srand(std::time(0));
// заповнюємо матрицю випадковими числами
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
matrix[i][j] = std::rand() % (upperLimit - lowerLimit + 1) + lowerLimit;
}
}
// виводимо вихідну матрицю
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
std::cout << matrix[i][j] << " ";
}
std::cout << std::endl;
}
// створюємо вектор
std::vector<int> vector;
// заповнюємо вектор елементами з відповідних стовпців
for (int j = 0; j < cols; j++) {
int count = 0;
for (int i = 0; i < rows; i++) {
if (matrix[i][j] > 0) {
count++;
}
}
vector.push_back(count);
}
// виводимо вектор
for (int i = 0; i < vector.size(); i++) {
std::cout << vector[i] << std::endl;
}
return 0;
}
```
Объяснение:
Вектор містить кількість додатних елементів відповідних стовпців вихідної матриці. Зверніть увагу, що індекси у векторі відповідають стовпцям вихідної матриці.