Задача про двумерный массив

TYMON

Member
19.06.2010
11
0
#1
Код:
Дана матрица B[N, М]. Найти в каждой строке матрицы максимальный и минимальный элементы и поменять их местами с первым и последним элементом строки соответственно.
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
void main()
{
float mas[20][20],a,b,min,max,n,m;
int i,j;
clrscr();
cout<<"Vvedite kolichestvo strok: ";
cin>>m;
cout<<"Vvedite kolichestvo stolbcov: ";
cin>>n;
cout<<"Vvedite konci otrezka: ";
cin>>a>>b;
cout.precision(2);
randomize();
cout<<"Ishodniy massiv:\n";
for (i=0;i<=n-1;i++)
{
for (j=0;j<=m-1;j++)
{
mas[i][j]=(b-a)*rand()/32767+a;
cout.width(6);
cout<<mas[i][j]<<" ";
}
cout<<"\n";
}

for ( i=0; i<=n-1;i++)
{
max=0;
min=0;
for (j=0;j<=m-1;j++)
if (mas[i][j]>max)
{
max=mas[i][j];
//zamenyaem pervie elementi
mas[i][0]=max;
}
if (mas[i][j]<min)
{
min=mas[i][j];
//zamenyaem poslednie elementi
mas[i][j+1]=min;
}
cout<<"\n";
cout<<"Maximalniy element "<<i+1<<" stroki = "<<max;
cout<<" Minimalniy element "<<i+1<<" stroki = "<<min;
}

//pol
cout<<"\nPolucheniy massiv:\n";
for (i=0;i<=n-1;i++)
{
for (j=0;j<=m-1;j++)
{
cout.width(6);
cout<<mas[i][j]<<" ";
}
cout<<"\n";
}
getch();
return;
}
Все вроде бы работает, максимальное ищется, и успешно заменяется на первые элементы каждой строки. А вот с минимальным возникли проблемы, выдает минимальным 0 (и естественно не заменяется)...Укажите ошибку пожалуйста
 

TYMON

Member
19.06.2010
11
0
#2
Все получилось спасибо большое :rolleyes: ...только вот нужно заменить строку, кому понадобится
mas[j+1]=min; на

Код:
mas[i][n-1]=min
 

grigsoft

Well-Known Member
15.11.2005
735
0
#3
А слова "поменять их местами" вы просто проигнорировали?