
31.03.2009, 16:25
|
|
Участник форума
Регистрация: 26.11.2008
Сообщений: 158
С нами:
9187097
Репутация:
158
|
|
Ошибка здесь:
Код:
{
for(int j=0;j<N;j++)
{
matrix[i][j]=rand()%(10);
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
Исправленный рабочий вариант:
Код:
#include <iostream.h>
#include <windows.h>
#include <stdlib.h>
#include<time.h>
void main()
{
const int N=5;
int matrix[N][N];
srand(time(0));
for(int i=0;i<N;i++)
{
for(int j=0;j<N;j++)
{
matrix[i][j]=rand()%10;
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
cout<<endl;
for ( int k = 0; k < N*N/2; ++k )
{
int i = k / N, j = k % N;
if ( i <= j && j < N-1-i )
{
int a = matrix[i][j];
matrix[i][j] = matrix[N-1-j][i];
matrix[N-1-j][i] = matrix[N-1-i][N-1-j];
matrix[N-1-i][N-1-j] = matrix[j][N-1-i];
matrix[j][N-1-i] = a;
}
}
for(i=0; i<N; i++){
for(int j=0;j<N;j++)
{
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
}
|
|
|