Segundo Cuatrimestre 2013 Paradigmas de Lenguajes de Programación (Programación Lógica) Trabajo Práctico 1b: A iens

Se pide programar en Prolog una parte/variante/simplificación de lo que se conoce como el enigma lógico “Aliens”. El problema consiste en ubicar en un tablero cuadrado de 10 10 casillas vac!as" una cierta cantidad dada de # cuadr!culas contiguas de la forma dada tal como est$ visuali%ada en el siguiente gr$fico&

'ada uno de los aliens se ubica completamente dentro del tablero" donde cada uno de los cuadrados que lo compone se ubica en una casilla" ( donde cuadrados contiguos ocupan casillas contiguas del tablero )o sea" que no se fragmenta el alien*. +as dos restricciones que se deben cumplir son que no pueden e itir casillas del tablero que est,n ocupadas por componentes de dos aliens distintos" ( que no pueden e istir casillas contiguas a un alien )que sean ad(acentes a una casilla ocupada inmediatamente a la i%quierda" derec-a" arriba o aba.o* que se encuentren ocupadas por componentes de otro alien. En el siguiente gr$fico se pueden ver cuatro aliens correctamente ubicados&

'aracter!sticas del programa& 0 Se deber$ utili%ar un predicado principal )le pueden dar el nombre que deseen* ( predicados secundarios.o deber$ ser presentado en m$quina ante los responsables de la c$tedra )con presencia de todos los integrantes del grupo* el d!a asignado previamente. 0 Se podr$ utili%ar alg2n tipo de entrada salida propia del lengua.emplo" qu. Salidas del programa& 0 Pares de aliens que generan conflictos en su ubicación )caso de error* 0 Par de listas indicando casillas ocupadas por aliens )la primera lista corresponde a las filas ( la segunda" a las columnas*. .e Prolog )solamente salida por pantalla*. Se solicita que a partir de una cierta cantidad de aliens dada ( con su ubicación correcta en el tablero de 10 10" la aplicación responda si se produce alguna situación conflictiva en la ubicación de aliens )por e.a se encuentra erróneamente ocupadas tanto por el alien 1 como por el alien /" ( donde la casilla a%ul es ad(acente al alien 1 ( se encuentra ocupada por el alien /. Estas dos situaciones no se pueden dar. Entradas del programa& 0 'antidad de aliens 0 1bicación de cada alien en el tablero. El traba.En el siguiente gr$fico se pueden ver tres aliens ubicados" donde la casilla ro. par de aliens provocan conflicto en su ubicación" indicando la naturale%a del conflicto*" ( en el caso que no se produc%ca conflicto en las ubicaciones de aliens" que indique la cantidad de casillas ocupadas por componentes de aliens para cada fila ( cada columna del tablero.