//---------------------------------------------------------------------------
#include <iostream>
#include <ctime>
#pragma hdrstop
using namespace std;
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char *argv[])
{
int **A, n, p=1, Num=0;
cout <<"Dimension: ";
cin >>n;
cout <<endl;
A=new int*[n];
for (int i=0; i<n; i++) A[i]=new int[n];
//Случайные целые числа в диапазоне [-100, 100].
srand (time(NULL));
for (int i=0; i<n; i++) {
for (int j=0; j<n; j++) {
A[i][j]=(rand()%401-200);
cout <<A[i][j]<<'\t';
}
cout <<endl;
}
for (int i=0, j=n-1; j!=-1; i++, j--) {
if (A[i][j]<0 && A[i][j]%2!=0) p=p*A[i][j];
}
cout <<"\nP="<<p<<endl;
//Расчет количества целых положительных на главной диагонали.
for (int i=0, j=0; i<n || j<n; i++, j++) {
if (A[i][j]>0 && A[i][j]%2==0) Num++;
}
cout <<"Num="<<Num<<endl;
for (int j=0; j<n; j++) delete []A[j];
delete []A;
system ("pause");
return 0;
}
//---------------------------------------------------------------------------
Следующий вариант
//---------------------------------------------------------------------------
#include <iostream>
#include <conio.h>
#pragma hdrstop
using namespace std;
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char *argv[])
{
int **A, m, n, p=1, Num=0;
cout <<"Rows: ";
cin >>m;
cout <<"Cols: ";
cin >>n;
cout <<endl;
A=new int*[m];
for (int i=0; i<m; i++)
A[i]=new int[n];
//Случайные целые числа в диапазоне [-100, 100].
srand (time(NULL));
for (int i=0; i<m; i++)
{
for (int j=0; j<n; j++)
{
A[i][j]=(rand()%401-200);
cout <<A[i][j]<<'\t';
}
cout <<endl;
}
for (int i=0;i<m ;i++)
if (A[i][(m-1)-i]<0 && A[i][(m-1)-i]%2!=0)
p*=A[i][(m-1)-i];
cout<<"\nP= "<<p<<endl;
getch();
return 0;
}
//---------------------------------------------------------------------------