X-Git-Url: https://git.llucax.com/z.facultad/75.52/treemulator.git/blobdiff_plain/3b646c1573243463ab55e4e2903f050900322f76..98e331147474997778f92d14b794a94f1dc3bedb:/src/main.cpp diff --git a/src/main.cpp b/src/main.cpp index 553ea8c..13d7c34 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -34,8 +34,14 @@ int main (int argc, char *argv[]) double l = Random::Double (0.0f, 1.0f); std::cout << l << " >= " << paltas << std::endl; - if (l >= paltas) { + if (!km.Size() // si no tenemos claves agregadas, mejor que hagamos un alta + || l >= paltas) { tree.AddKey (c); + try { + tree.AddKey (c); + } catch (Exception *e) { + std::cout << e->Message () << std::endl; + } km.AddValue (*it); it++; } else { @@ -53,6 +59,8 @@ int main (int argc, char *argv[]) std::list l = km.GetList (); it = l.begin (); + int bien = 0; + int mal = 0; while (it != l.end ()) { ClaveFija c(*it); BTreeFindResult *r; @@ -60,12 +68,20 @@ int main (int argc, char *argv[]) r = tree.FindKey (c); if (r != NULL) { std::cout << "** Clave " << (*it) << " encontrada.\n"; + bien++; delete r; - } else + } else { std::cout << "** Clave " << (*it) << " NO encontrada.\n"; + mal++; + } it++; } + std::cout << "\n\n === Resultados ===\n"; + std::cout << " Hist : " << bien << "\n"; + std::cout << " Miss : " << mal << "\n"; + std::cout << " Total : " << (bien+mal) << "\n"; + return 0; }