Ejemplo n.º 1
0
int
main(void)
{
  TAVLCom a;
  TComplejo c;
  TComplejo d33(33, 33), d78(78, 78);

  for(int i = 1; i <= 100; i++)
  {
    c.Re(i);
    c.Im(i);
    a.Insertar(c);
  }

  cout << "Nodos: " << a.Nodos() << endl;

  a.Borrar(d33);
  cout << "Nodos: " << a.Nodos() << endl;

  a.Borrar(d78);
  cout << "Nodos: " << a.Nodos() << endl;

  if(a.Buscar(d33))
    cout << "Si" << endl;
  else
    cout << "No" << endl;

  if(a.Buscar(d78))
    cout << "Si" << endl;
  else
    cout << "No" << endl;
}
Ejemplo n.º 2
0
int
main(void)
{
  TComplejo a;
  TComplejo b(a);
  TComplejo c;
  c = a;
  
  if(a != b)
    cout << "SI" << endl;
  else
    cout << "NO" << endl;

  c.Re(1);

  if(a != c)
    cout << "SI" << endl;
  else
    cout << "NO" << endl;

  return 0;
}
Ejemplo n.º 3
0
int
main(void)
{
  TAVLCom a;
  TComplejo c;

  for(int i = 1; i <= 1000; i++)
  {
    c.Re(i);
    c.Im(i);
    a.Insertar(c);
  }

  cout << "Nodos: " << a.Nodos() << endl;

  for(int i = 1; i <= 1000; i++)
  {
    c.Re(i);
    c.Im(i);
    a.Borrar(c);
  }

  cout << "Nodos: " << a.Nodos() << endl;
}
Ejemplo n.º 4
0
bool
TComplejo::Comparar (TComplejo &c)	//true: izquierda -- false: derecha
{
	bool salida;
	
	if (this->Mod() < c.Mod())
	{
		salida = true;
	}
	else if (this->Mod() > c.Mod())
	{
		salida = false;
	}
	else
	{
		if (this->Re() > c.Re())
		{
			salida = false;
		}
		else if (this->Re () < c.Re())
		{
			salida = true;
		}
		else
		{
			if (this->Im() > c.Im())
			{
				salida = false;
			}
			else if (this->Im () < c.Im())
			{
				salida = true;
			}
		}
	}
	
	return (salida);
}
Ejemplo n.º 5
0
int
TA234Nodo::Comparar (TComplejo c)
{
	if (tipo_nodo == 1 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL)
	{
		if (c == itIz)
		{
			return 0;
		}
		
		else if (c.Comparar(itIz))
		{
			return 1;
		}
		
		else
		{
			return 2; 
		}
	}
	
	else if (tipo_nodo == 2 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL && hijoMeDe.raiz != NULL)
	{
		if (c == itIz || c == itMe)
		{
			return 0;
		}
		
		else if (c.Comparar(itIz))
		{
			return 1; 
		}
		
		else if (c.Comparar (itMe))
		{
			return 2; 
		}
		
		else
		{
			return 3; 
		}
		
	}
	
	else if (tipo_nodo == 3 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL && hijoMeDe.raiz != NULL && hijoDe.raiz != NULL)
	{
		if (c == itIz || c == itMe || c == itDe)
		{
			return 0;
		}
		
		else if (c.Comparar(itIz))
		{
			return 1; 
		}
		
		else if (c.Comparar (itMe))
		{
			return 2; 
		}
		
		else if (c.Comparar (itDe))
		{
			return 3; 
		}
		
		else
		{
			return 4;
		}
	}
	
	else
	{
		return 5;
	}
}
Ejemplo n.º 6
0
bool
TA234Nodo::InsertarAux (TComplejo c)
{
	bool salida = false;
	
	if (tipo_nodo == 1)
	{
		if (c != itIz)
		{
			if (c.Comparar (itIz))
			{
				itDe = itMe;
				
				itMe = itIz;
				
				itIz = c;
			}
			
			else
			{
				itDe = itMe;
				
				itMe = c;
			}
			
			tipo_nodo++;
			
			salida = true;
		}
	}
	
	else if (tipo_nodo == 2)
	{
		if (c != itIz && c != itMe)
		{
			if (c.Comparar (itIz))
			{
				itDe = itMe;
				
				itMe = itIz;
				
				itIz = c;
			}
			
			else if (c.Comparar (itMe))
			{
				itDe = itMe;
				
				itMe = c;
			}
			
			else
			{
				itDe = c;
			}
			
			salida = true;
			
			tipo_nodo++;
		}
	}
	
	return (salida);
}
Ejemplo n.º 7
0
bool 
TA234Com::Buscar (TComplejo c)
{
	bool salida = false;
	
	if (!EsVacio())
	{
		if (raiz -> tipo_nodo == 1)
		{
			if (c == raiz -> itIz)
			{
				salida = true;
			}
			
			else
			{
				if (c.Comparar (raiz -> itIz))
				{
					salida = raiz -> hijoIz.Buscar(c);
				}
				
				else
				{
					salida = raiz -> hijoMeIz.Buscar(c);
				}
			}
		}
		
		else if (raiz -> tipo_nodo == 2)
		{
			if (c == raiz -> itIz || c == raiz -> itMe)
			{
				salida = true;
			}
			
			else
			{
				if (c.Comparar (raiz -> itIz))
				{
					
					salida = raiz -> hijoIz.Buscar (c);
					
				}	
				
				else
				{
					if (c.Comparar (raiz -> itMe))
					{
						salida = raiz -> hijoMeIz.Buscar (c);
					}
					
					else
					{
						salida = raiz -> hijoMeDe.Buscar (c);
					}
				}
			}
		}
		
		else if (raiz -> tipo_nodo == 3)
		{
			if (c == raiz -> itIz || c == raiz -> itMe || c == raiz -> itDe)
			{
				salida = true;
			}
			
			else
			{
				if (c.Comparar (raiz -> itIz))
				{
					salida = raiz -> hijoIz.Buscar (c);
				}
				
				else
				{
					if (c.Comparar (raiz -> itMe))
					{
						salida = raiz -> hijoMeIz.Buscar (c);
					}
					
					else
					{
						if (c.Comparar (raiz -> itDe))
						{
							salida = raiz -> hijoMeDe.Buscar (c);
						}
						
						else
						{
							salida = raiz -> hijoDe.Buscar (c);
						}
					}
				}
			}
		}
	}
	
	return (salida);
}