C/C++
Помогите с задачей с++
Заполнить двумерный числовой массив R целыми числами. Найти количество положительных элементов массива. Затем найти количество положительных элементов каждой строки массива.
#include <iostream>
using namespace std;
int main() {
const auto n = 4;
const auto n = 5;
int R[n][n];
for (auto& row : R) for (auto& x : row) cin >> x;
auto count = 0U;
for (auto& row : R) for (auto x : row) if (x > 0) ++count;
cout << "All count: " << count << '\n';
auto line = 0U;
for (auto& row : R) {
count = 0U;
for (auto x : row) if (x > 0) ++count;
cout << "Row " << ++line << ": " << count << '\n';
}
}
using namespace std;
int main() {
const auto n = 4;
const auto n = 5;
int R[n][n];
for (auto& row : R) for (auto& x : row) cin >> x;
auto count = 0U;
for (auto& row : R) for (auto x : row) if (x > 0) ++count;
cout << "All count: " << count << '\n';
auto line = 0U;
for (auto& row : R) {
count = 0U;
for (auto x : row) if (x > 0) ++count;
cout << "Row " << ++line << ": " << count << '\n';
}
}
Anatoli Urevich
а вы можете обьяснить что происходит в коде?
С двумерным динамическим массивом размера m×n с элементами из диапазона [a;b] (переменные a, b, m и n вводятся с экрана):
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
int a, b, j, k, l = 0, m, n;
cout << "a b m n » ";
cin >> a >> b >> m >> n;
int **R = new int* [m];
for (j = 0; j < m; j++) R[j] = new int [n];
srand(time(NULL));
for (j = 0; j < m; j++) for (k = 0; k < n; k++)
{
R[j][k] = a + rand() % (b + 1 - a);
if (R[j][k] > 0) ++l;
}
cout << l << endl;
for (j = 0; j < m; j++)
{
l = 0;
for (k = 0; k < n; k++) if (R[j][k] > 0) ++l;
cout << j + 1 << " » " << l << endl;
}
system("pause > nul");
return 0;
}
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
int a, b, j, k, l = 0, m, n;
cout << "a b m n » ";
cin >> a >> b >> m >> n;
int **R = new int* [m];
for (j = 0; j < m; j++) R[j] = new int [n];
srand(time(NULL));
for (j = 0; j < m; j++) for (k = 0; k < n; k++)
{
R[j][k] = a + rand() % (b + 1 - a);
if (R[j][k] > 0) ++l;
}
cout << l << endl;
for (j = 0; j < m; j++)
{
l = 0;
for (k = 0; k < n; k++) if (R[j][k] > 0) ++l;
cout << j + 1 << " » " << l << endl;
}
system("pause > nul");
return 0;
}
Похожие вопросы
- Помогите решить задачу по программированию на C++
- СРОЧНО! Помогите с задачей.
- ПОМОГИТЕ С ЗАДАЧЕЙ НА C++
- Помогите решить задачу по C++!
- Помогите решить задачу по программированию
- Помогите решить задачу пожалуйста, в C++
- Помогите решить задачу на c++
- Помогите с задачей на языке СИ
- Помогите решить задачу на С++ (мне не совсем ясен смысл задания)
- Помогите решить задачу на С++, используя статические массивы