Perl - comparar dos arrays multidimensionales?

 
Vista:

comparar dos arrays multidimensionales?

Publicado por Tony Rominger (1 intervención) el 22/05/2006 12:25:06
hola, como puedo saber si dos arrays son iguales?tengo que hacer un programa en el que diga si una matriz es simetrica(si la traspuesta es igual a la matriz),se que hay que comparar numero a numero,pongo el problema a ver si encuentras el fallo,gracias;

#include <stdio.h>
#include <stdlib.h>
#define fila 2
#define columna 2
int main(){
int fil,col;
int matriz[fila][columna]={
{1,2},
{4,5}};
for(fil=0;fil<fila;fil++)
for(col=0;col<columna;col++)
if(matriz[fil][col]==matriz[col][fil])/*esto no se si se puede hacer*/
printf("matriz simetrica\n");

system("pause");
return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:comparar dos arrays multidimensionales?

Publicado por Joaquin Ferrero (48 intervenciones) el 23/05/2006 08:44:20
Ya he visto el fallo... está escrito en C. :)

¡Esto es un foro de Perl, Tony!

Tanto en C como en Perl, la solución es la misma: para saber si es simétrica, debes comprobar que

matriz[fil][col] == matriz[col][fil]

recorriendo toda la matriz

for(fil = 0; fil < fila; fil++) {
for(col = fil+1; col < columna; col++ ) {

Fíjate que no se recorre toda la matriz entera, porque no hace falta. Sólo hay que recorrer la mitad. Ni siquiera se comprueba la diagonal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar