Para el primer caso, algo como:
Código C++:
Ver original#include <stdio.h>
#define N 5
int main(void){
int i, k , j , mat[N][N] ;
for( i = 0, k = 1; i < N; i++ ){
for( j = 0; j < N; j++, k++ ){
mat[i][j]=k;
}
}
for( k = 0; k < N; k ++ ){
for( i = 0, j = 0; i < N; i++, j++ )
if ( i + k < N && i + k >= 0 )
printf ( "%3d", mat
[i
+ k
][j
] ); if ( i == N )
for( i = N - 1, j = N ; i >= 0; i--,j-- )
if ( j - k - 1>= 0)
printf ( "%3d", mat
[i
][j
- k
- 1] ); }
return 0;
}
Y análogamente para los otros casos.
¡¡¡Saluditos!!!