Hola, perdón , tengo un problema en un ejercicio de suma de arboles binarios de búsqueda.
Este es el enunciado : Codificar una función entera en C++ que devuelva como resultado la suma de las claves impares contenidas en nodos con dos hijos.
Y este es mi código:
int sumaClavesImparesDosHijo (pNodoArbol &nodo) {
int resul;
if(nodo != NULL){
if(nodo->clave %2 != 0){
if((nodo->iz != NULL) && (nodo->de != NULL)){
resul += nodo->clave;
}
resul = sumaClavesImparesDosHijo(nodo->iz) +
sumaClavesImparesDosHijo(nodo->de);
}
}
return resul;
}
int Arbol::sumaClavesImparesDosHijos () {
int resul = 0;
resul = sumaClavesImparesDosHijo(raiz);
return resul;
}
Y la suma me da 1877928545 , cosa que no tiene sentido. Tendría que dar 128.