Como puedo comparar 2 arrays?

roger11
15 de Noviembre del 2003
-Hola,estoy empezando a programar con el c++,nos han puesto un ejercicio,que era entrar dos vectores de 10 elementos de tipo entero (hasta aqui bien) El problema es como puedo comparar los elementos de las 2 arrays entre ellas.Si alguien me pudiera ayudar estaria muy agradecido.GRACIAS!!!!

pigma
15 de Noviembre del 2003
Para ver ambos vectores son iguales o no tendrás que comparar sus elementos uno a uno, eso lo puedes hacer con un for, por ejemplo

bool iguales(int *v1, int *v2){
for(int i=0; i<10; i++)
if(v1[i]!=v2[i]) return false;
return true;
}

Una función como esta comprobaría uno a uno que no son distintos, si eso es así, es que son iguales, y devuelve true.

roger11
15 de Noviembre del 2003
Muchas Gracias por tu respuesta.Pero no se pq sigo teniendo el mismo problema.el problema es que no me compara cuando pongo:
for(int con=0;con<10;con++)
{if(myarray[0]=arrays[0])
{cout<<"El valor esta repetido en ambas arrays "<<con<<endl;
}
if(myarray[1]=arrays[1])
{cout<<"El valor esta repetido en ambos arrays "<<con<<endl;
}
}
Esto està mal seguro no!!! Siento que sea tan cazurro!!! acabo de empezar.Agradeceria tu respuesta de nuevo amigo.

landanohr
15 de Noviembre del 2003
Vamos a ver, si lo que quieres es comparar dos arrays no se que COÑO ( con perdón ) estás haciendo. Lo primero es tenerlo claro. A ver:

bool iguales = true;
int contador;

for(contador=0; contador<10; contador++)
{
if(vector1[contador] != vector2[contador])
{
cout << "Arrays diferentes";
contador=10;
iguales = false;
}
}

Pues eso, si iguales es true son iguales, sino no

roger11
15 de Noviembre del 2003
Lo siento creo que no me e explicado bien.
tengo dos arrays de 10 elementos cada una.
Lo que quiero es: una vez introducidos los elementos en las arrays(a1,a2)
que mire si los elementos que yo he puesto en(a1) se repiten en(a2) y que me diga en que indices se repiten.
Siento no haver sido mas concreto,esque soy un pardillo de la ostia!!!

pigma
15 de Noviembre del 2003
Si lo que no te funciona es un código como el que has puesto (comparando los elementos uno a uno) será porque tienes mal el if, recuerda que en C y C++ el símbolo '=' es una asignación, para comparar debes usar '=='