Главная » 2015 » Март » 12 » матрицы. сумма, произведение, количество
09:08
матрицы. сумма, произведение, количество

#include <iostream>
using namespace std;
double &put(int i, int j); 
double get(int i, int j); 
const int n=5, m=7;
double a[n][m];
double error = -1;
int main()
{
    setlocale(LC_ALL, "Russian");  
    // массив заполняется случайными числами
    for (int i=0;i<n;i++)
    {
        for (int j=0;j<m;j++)
            put(i,j)=rand() % 6 - 3;
    }
    cout <<"Введенный массив"<<endl;
    for (int i=0;i<n;i++)
    {
        for (int j=0;j<m;j++)
        {
            cout <<get(i,j)<<" ";
        }
        cout <<endl;
    }
    
    //поиск количества, суммы, произведения
    int k=0;
    double p=1;
    double s=0;
    for (int i=0;i<n;i++)
    {
        for (int j=0;j<m;j++)
        {
            double b=get(i,j);
            if (b>0) k++;
                else if (b<0) s+=b;
            if ((b>0)&&(int(b)%2==0)) p*=b;
        }
    }
    cout <<"количество положительных ="<<k<<endl;
    cout <<"сумма отрицательных ="<<s<<endl;
    cout <<"произведение четных ="<<p<<endl;

    system("pause");
    return 0;
}

double &put(int i, int j)
{
    if((i>=0) && (i<n) && (j>=0) && (j<m))
        return a[i][j]; 
        else
        {
            cout << "Ошибка нарушения границ!\n";
            return error; 
        }
}

double get(int i, int j)
{
    if((i>=0) && (i<n) && (j>=0) && (j<m))
        return a[i][j]; 
        else 
        {
            cout << "Ошибка нарушения границ!\n";
            return error; 
        }
}

Просмотров: 368 | Добавил: denjes | Рейтинг: 0.0/0
Всего комментариев: 0
avatar