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 {
std::list <int> l = km.GetList ();
it = l.begin ();
+ int bien = 0;
+ int mal = 0;
while (it != l.end ()) {
ClaveFija c(*it);
BTreeFindResult *r;
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;
}