X-Git-Url: https://git.llucax.com/z.facultad/75.52/treemulator.git/blobdiff_plain/fd68ec89fabf4a95e4ebba38fe54041a9ad6d667..59b7476481f01388fcfd13492adbba7ef841755c:/src/main_var.cpp?ds=sidebyside diff --git a/src/main_var.cpp b/src/main_var.cpp index e6aed97..8202096 100644 --- a/src/main_var.cpp +++ b/src/main_var.cpp @@ -18,7 +18,7 @@ int main (int argc, char *argv[]) int bajas = atoi (argv[3]); KeyManager km; - BTree tree ("test.idx", bloque, BTree::KEY_VARIABLE); + BTree tree ("test.idx", bloque, BTree::TYPE_IDENTIFICACION, BTree::KEY_VARIABLE); std::list lst; std::list::iterator it; @@ -29,7 +29,7 @@ int main (int argc, char *argv[]) it = lst.begin (); while (it != lst.end ()) { - ClaveVariable c(*it); + ClaveVariable c(*it, 0); double l = Random::Double (0.0f, 1.0f); std::cout << l << " >= " << paltas << std::endl; @@ -37,17 +37,25 @@ int main (int argc, char *argv[]) || l >= paltas) { std::string sss = c; std::cout << "Clave Agregada " << sss << std::endl; - tree.AddKey (c); - km.AddValue (*it); + try { + tree.AddKey (c); + km.AddValue (*it); + } catch (Exception *e) { + std::cout << e->Message () << std::endl; + } it++; } else { /* Tengo que borrar una clave entre 0 e "i" de la lista * porque son las que ya agregue. */ - ClaveVariable c(km.GetRandom ()); + ClaveVariable c(km.GetRandom (), 0); - tree.DelKey (c); - std::string sss = c; - std::cout << "Clave Borrada " << sss << std::endl; + try { + tree.DelKey (c); + std::string sss = c; + std::cout << "Clave Borrada " << sss << std::endl; + } catch (Exception *e) { + std::cout << e->Message () << std::endl; + } } } @@ -58,7 +66,7 @@ int main (int argc, char *argv[]) int bien = 0; int mal = 0; while (it != l.end ()) { - ClaveVariable c(*it); + ClaveVariable c(*it, 0); BTreeFindResult *r; r = tree.FindKey (c); @@ -78,6 +86,6 @@ int main (int argc, char *argv[]) std::cout << " Miss : " << mal << "\n"; std::cout << " Total : " << (bien+mal) << "\n"; - return 0; + return mal; }