Necesito ayuda en un codigo que si compila, pero no se ejecuta, el codigo se "supone" que declara un arreglo n x m y e imprime en el cuadro inferior izquierdo, el producto de (n*m) , luego en el de arriba (n*m)-1 y asi susesivamente (en forma de espiral), hasta llegar al centro
NECSITO AYUDA PARA VER QUIEN SABE CUAL ES MI ERROR O SI SABEN OTRA FORMA DE IMPLEMENTARLO
GRACIAS
Código:
#include <stdio.h>
#include <stdlib.h>
#define ren 3
#define col 3
int main(){
int lim_supr,lim_inf,lim_derecho,lim_izq,a,b,c,d,e,f,m=1,r,i,j,n;
int x[ren][col];
lim_supr=0; lim_inf=ren;lim_derecho=col;lim_izq=0;
r=ren*col;
while(r>0){
for(i=ren-m,j=0;i>=lim_supr;i--){
x[j]=r;
r--;
}
for(a=0,b=col;b<lim_derecho;b++){
x[a]=r;
r--;
}
for(c=1,d=lim_derecho;c<lim_inf;c++){
x[c][d]=r;
r--;
}
for(e=lim_inf,f=lim_derecho-m;f<lim_izq;f--){
x[e][f]=r;
r--;
}lim_supr++;
j++;
lim_derecho--;
a++;
lim_inf--;
lim_izq++;
m++;
}
for(i=0;i<ren;i++){
system("PAUSE");
for(j=0;j<col;j++){
printf("%d",x[j]);
}
printf("\n");
}
system("PAUSE");
return 0;
}
NECSITO AYUDA PARA VER QUIEN SABE CUAL ES MI ERROR O SI SABEN OTRA FORMA DE IMPLEMENTARLO
GRACIAS
Código:
#include <stdio.h>
#include <stdlib.h>
#define ren 3
#define col 3
int main(){
int lim_supr,lim_inf,lim_derecho,lim_izq,a,b,c,d,e,f,m=1,r,i,j,n;
int x[ren][col];
lim_supr=0; lim_inf=ren;lim_derecho=col;lim_izq=0;
r=ren*col;
while(r>0){
for(i=ren-m,j=0;i>=lim_supr;i--){
x[j]=r;
r--;
}
for(a=0,b=col;b<lim_derecho;b++){
x[a]=r;
r--;
}
for(c=1,d=lim_derecho;c<lim_inf;c++){
x[c][d]=r;
r--;
}
for(e=lim_inf,f=lim_derecho-m;f<lim_izq;f--){
x[e][f]=r;
r--;
}lim_supr++;
j++;
lim_derecho--;
a++;
lim_inf--;
lim_izq++;
m++;
}
for(i=0;i<ren;i++){
system("PAUSE");
for(j=0;j<col;j++){
printf("%d",x[j]);
}
printf("\n");
}
system("PAUSE");
return 0;
}