striker159
Lt. Junior Grade
- Registriert
- Dez. 2008
- Beiträge
- 328
hi
es geht um folgendes.
ich habe eine funktion do(X,Y).
nun möchte ich eine funktion do2 definieren mit einer liste (größe >=2)als parameter, die das do(X,Y) mit dem ersten eintrag der liste, und jeweils allen anderen einträgen der liste aufruft.
also wenn die liste [a,b,c,d] ist , soll do2([a,b,c,d]) folgendes machen:
do(a,b) , do(a,c) , do(a,d).
mein problem in der rekursion ist hierbei, dass ich nicht weiß, wie ich zum nächsten element der liste komme, also zb von b nach c.
also mein ansatz wäre
do2(X,Y) :- do(X,Y).
und jetzt kommt halt das erwähnte problem, wenn die liste mehr als 2 elemente hat
do2([X,Y|R]) :- do2(X,Y) , do2(X,"erstes element von R","rest von R").
hat dafür jemand einen rat?
es geht um folgendes.
ich habe eine funktion do(X,Y).
nun möchte ich eine funktion do2 definieren mit einer liste (größe >=2)als parameter, die das do(X,Y) mit dem ersten eintrag der liste, und jeweils allen anderen einträgen der liste aufruft.
also wenn die liste [a,b,c,d] ist , soll do2([a,b,c,d]) folgendes machen:
do(a,b) , do(a,c) , do(a,d).
mein problem in der rekursion ist hierbei, dass ich nicht weiß, wie ich zum nächsten element der liste komme, also zb von b nach c.
also mein ansatz wäre
do2(X,Y) :- do(X,Y).
und jetzt kommt halt das erwähnte problem, wenn die liste mehr als 2 elemente hat
do2([X,Y|R]) :- do2(X,Y) , do2(X,"erstes element von R","rest von R").
hat dafür jemand einen rat?