Главная » 2016 » Март » 15 » M6 33.4 поменять строки с max и min
09:27
M6 33.4 поменять строки с max и min

#include <iostream>
#include <ctime>
using namespace std;
int main()
{
    setlocale(LC_ALL,"rus_rus.1251");
    srand(time(0));
    const int n=20;
    const int m=9;
    double a[n][m];

    //матрица
    for (int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
           a[i][j]=(rand()%20)+10;
        }
    }

    //вывод матрицы
    cout.setf(ios::fixed);
    cout.width(7);
    cout.precision(2); 
    cout<<"Матрица A:"<<endl;
    for (int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
           cout<<a[i][j]<<"   ";
        }
        cout<<endl;
    }
    
    //обработка матрицы
    int ii,jj,max,min;
    max=a[0][0];
    min=a[0][0];
    ii=0;
    jj=0;
    for (int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
           if (a[i][j]>max)
           {
               max=a[i][j];
               ii=i;
           }
           if (a[i][j]<min)
           {
               min=a[i][j];
               jj=i;
           }
        }
    }
    cout<<"max = "<<max<<"  строка ii = "<<ii<<endl;
    cout<<"min = "<<min<<"  строка jj = "<<jj<<endl;
    double c;
    //меняем строки
    for (int j=0;j<m;j++)
    {
        c=a[ii][j];
        a[ii][j]=a[jj][j];
        a[jj][j]=c;
    }

    //вывод измененной матрицы
    cout.setf(ios::fixed);
    cout.width(7);
    cout.precision(2); 
    cout<<"Измененная матрица A:"<<endl;
    for (int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
           cout<<a[i][j]<<"   ";
        }
        cout<<endl;
    }

    system("pause");
    return 0;
}

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