Donar $20 Donar $50 Donar $100 Donar mensualmente
 


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Recursividad en Prolog
Autor Mensaje
Fly Sin conexión
Secretario de la SAE
estado sólido
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 511
Agradecimientos dados: 118
Agradecimientos: 169 en 58 posts
Registro en: May 2011
Mensaje: #1
Recursividad en Prolog Dudas y recomendaciones Paradigmas de Programación
Buen eso..... No catso nada de recursividad con el prolog.

En uno de los Tps nos piden a partir de una lista como esta:
[elem1, elem2, elem3, elem4,elem5]
... crear un listado de listas de todas las combinaciones de sus elementos de a pares:
X=[elem1,elem2]
X=[elem2,elem3]
X=[elem3,elem4]
X=[elem4,elem5]
X=[elem1,elem3]
X=[elem3,elem5]
etc...........

¿se entiende maso?
¿Como encaro una locura así?

slds!
08-07-2012 22:58
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina En línea
Colaborador
2016! ❥
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.468
Agradecimientos dados: 930
Agradecimientos: 1.224 en 456 posts
Registro en: Sep 2010
Mensaje: #2
RE: Recursividad en Prolog
2 cosas, tengo la formula pero no tengo toda la idea de como explicartelo. Si te gusta es esto:

varia(0,_,[]).
varia(N,L,[H|Varia]) :- N>0,N1 is N -1,
borrar(H,L,Rest),varia(N1,Rest,Varia).

borrar(X,[X|T],T).
borrar(X,[H|T],[H|NT]) :- borrar(X,T,NT).

si vos consultas varia(2,[1,2,3],ListasPosibles).
te tira [1,2][1,3][2,1][2,3][3,1][3,2]

En esta pagina hay mas =) que varios vi que tomaron en parciales/tps
http://webdelprofesor.ula.ve/ingenieria/...rolog.html

love
08-07-2012 23:55
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Dem0 Sin conexión
( ͡° ͜ʖ ͡°)
._.
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 4.984
Agradecimientos dados: 9
Agradecimientos: 148 en 64 posts
Registro en: Apr 2008
Mensaje: #3
RE: Recursividad en Prolog

productoCartesiano(P,Q,R) :- findall([X,Y],(member(X,P),member(Y,Q),R).



No lo probé, pero fijate.


?- productoCartesiano([elem1, elem2, elem3, elem4,elem5],[elem1, elem2, elem3, elem4,elem5],X).


(Este mensaje fue modificado por última vez en: 09-07-2012 00:00 por Dem0.)
08-07-2012 23:58
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)



    This forum uses Lukasz Tkacz MyBB addons.