| Contacto | Chat | Foro |__
  
 
Principal Hoja de Vida Universidad Artículos Programas Descargas

Solución al problema de las 8 reinas


PROG00010 - C/C++
Programa que resuelve el clásico problema de las 8 reinas, que consiste en ubicar ocho reinas en un tablero de ajedrez, sin que ninguna pueda atacar a cualquiera de las otras siete. Se utiliza un algoritmo de "fuerza bruta" implementado en forma recursiva.

int SetQueen (int Level)
{
   int i,j,Ok;

   if (Level>7)
      return(OK);

   for (i=0;i<8;i++)
   {
      for (Ok=1,j=Level-1;(j>=0)&&(Ok);j--)
         if ((i==Table[j])||(abs(i-Table[j])==abs(Level-j)))
            Ok= 0;

      if (Ok)
      {
         Table[Level]= i;
         ShowTable(Table);
         if (SetQueen(Level+1)==OK)
            return(OK);
         Table[Level]= -1;
         ShowTable(Table);
      }
   }

   return(NONOK);
}

Advertencia
Aunque no he escatimado esfuerzos en cuanto a proveer aplicaciones e información confiable y veraz, sin embargo no puedo garantizar que esté totalmente libre de errores; por esa razón, no asumo responsabilidad alguna por las consecuencias que se deriven de su empleo.




7-Zip

Descarga Adobre Reader

Descargar programa
  Copyright 2005 | Ramón Medina | Todos los derechos reservados | Última Actualización: Agosto del 2008 | webmaster@ramonmedina.name