В целочисленной матрице A(N, M) подсчитать сумму и произведение всех
элементов, которые являются трехзначными нечетными элементам.
C/C++
Помогите с программой на c++
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <cmath>
using namespace std;
int main()
{
int N,M;
do
{
cout << "Введите количество строк: ";
cin >> N;
} while(N <= 0);
do
{
cout << "Введите количество столбцов: ";
cin >> M;
} while(M <= 0);
int ** A;
A = new int * [N];
for(int x = 0; x < N; x++)
A[x] = new int [M];
srand(time(NULL)); // заполняем матрицу случайными числами
for(int x = 0; x < N; x++)
{
for(int y = 0; y < M; y++)
{
A[x][y] = rand() % 2001 - 1000; // будут значения от -1000 до 1000
/*
если нужен ручной ввод данных, то нужно удалить строкчки
#include <ctime>
srand(time(NULL));
а вместо
A[x][y] = rand() % 2001 - 1000;
написать
cin >> A[x][y];
и строку cout << A[x][y] << '\t';
тоже можно удалить
*/
cout << A[x][y] << '\t';
}
cout << endl;
}
long long int P = 1, S = 0; // произведение и сумма
for(int x = 0; x < N; x++)
{
for(int y = 0; y < M; y++)
{
if(fabs(A[x][y]) > 99 && fabs(A[x][y]) < 1000)
{
if(A[x][y] % 2)
{
S += A[x][y];
P *= A[x][y];
}
}
}
}
cout << "Сумма равна " << S << '.' << endl;
cout << "Произведение равно " << P << '.' << endl;
if(A == NULL) exit(1);
else
{
for(int x = 0; x < N; x++)
{
if(A[x] == NULL) exit(1);
else
{
delete [] A[x];
A[x] = NULL;
}
}
delete [] A;
A = NULL;
}
return 0;
}
#include <ctime>
#include <cstdlib>
#include <cmath>
using namespace std;
int main()
{
int N,M;
do
{
cout << "Введите количество строк: ";
cin >> N;
} while(N <= 0);
do
{
cout << "Введите количество столбцов: ";
cin >> M;
} while(M <= 0);
int ** A;
A = new int * [N];
for(int x = 0; x < N; x++)
A[x] = new int [M];
srand(time(NULL)); // заполняем матрицу случайными числами
for(int x = 0; x < N; x++)
{
for(int y = 0; y < M; y++)
{
A[x][y] = rand() % 2001 - 1000; // будут значения от -1000 до 1000
/*
если нужен ручной ввод данных, то нужно удалить строкчки
#include <ctime>
srand(time(NULL));
а вместо
A[x][y] = rand() % 2001 - 1000;
написать
cin >> A[x][y];
и строку cout << A[x][y] << '\t';
тоже можно удалить
*/
cout << A[x][y] << '\t';
}
cout << endl;
}
long long int P = 1, S = 0; // произведение и сумма
for(int x = 0; x < N; x++)
{
for(int y = 0; y < M; y++)
{
if(fabs(A[x][y]) > 99 && fabs(A[x][y]) < 1000)
{
if(A[x][y] % 2)
{
S += A[x][y];
P *= A[x][y];
}
}
}
}
cout << "Сумма равна " << S << '.' << endl;
cout << "Произведение равно " << P << '.' << endl;
if(A == NULL) exit(1);
else
{
for(int x = 0; x < N; x++)
{
if(A[x] == NULL) exit(1);
else
{
delete [] A[x];
A[x] = NULL;
}
}
delete [] A;
A = NULL;
}
return 0;
}
Похожие вопросы
- Помогите написать программу на C++
- Помогите с программой на C++
- Помогите написать программу на C++
- ПОМОГИТЕ СОСТАВИТЬ ПРОГРАММУ НА C++.
- Помогите в программой в C++
- ПОМОГИТЕ НАПИСАТЬ ПРОГРАММУ НА C++
- Помогите написать программу на C++
- ПОМОГИТЕ НАПИСАТЬ ПРОГРАММУ НА C++ ИСПОЛЬЗУЯ ТОЛЬКО ЦИКЛЫ.
- Помогите написать программу на C++ Нето мои знания по программированию равны 0 а зачёт нужен
- Помогите написать программу на c++