#define USECHRONO #undef HAVE_MPI #include "eval.hpp" #include #include #include #include #include #include #include using namespace aed; using namespace std; //---:---<*>---:---<*>- COMIENZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> // COMPLETAR DNI y NOMBRE AQUI: // Nombre: Giuliana Cagnola int DNI=43009454; ///-------------------- ///Escribir una función void listab(btree &B, list &abpos,list &val); ///que, dado un árbol B, y dos listas de enteros abpos y val inserta en esas ///lista los valores correspondientes de posición y valor. //Utilizar una función recursiva con dosargumentos adicionales, el iterador que propaga la recursión, //la posición entera (abpos) correspondiente al iterador. //Si el nodo es Lambda no es necesario hacer nada. //Caso contrario apendizar la posición y valor correspondiente a las listas. //Propagar la recursión a los hijos. ///-------------------- //---:---<*>---:---<*>---:---<*>---:---<*>---:---<*> void listab(btree &B, btree::iterator it, list &abpos, list &vals, int pos) { if(it==B.end()) return; abpos.push_back(pos); vals.push_back(*it); listab(B, it.left(), abpos, vals, pos+1); listab(B, it.right(), abpos, vals, pos+1); } void listab(btree &B, list &abpos, list &vals) { int pos; listab(B, B.begin(), abpos, vals ,pos); } //---:---<*>---:---<*>- FINALIZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> int main() { Eval ev; int vrbs=0; ev.eval<1>(listab,vrbs); ev.evalr<1>(listab,12345,vrbs); return 0; }