Liste Länge, einlegen element

Ich versuche, ein Programm zu schreiben in Prolog, die das einfügen eines Elementes in eine bestimmte position, also z.B.

?- ins(a, [1,2,3,4,5], 3, X).
X = [1,2,a,3,4,5].

Ich habe den folgenden code:

ins(X,[H|T],P,OUT) :-
   length([T3],P),
   concatenate(X,[H],T),
   ins(...). 

Das problem ist, dass es das einfügen von element X im index von hinten (ich weiß auch wo das problem ist -> die length([T3],P) ist offensichtlich die Länge der Liste zurück nicht aus dem Kopf) . Ich war versucht sich zu erinnern, wie viel Elemente habe ich abgeschnitten und legen Sie X wenn "Anzahl der cut-off-Elemente" = P, aber ich kann nicht wirklich schreiben, dass in Prolog. Irgendwelche Ideen?

InformationsquelleAutor Johnzzz | 2012-04-08

Schreibe einen Kommentar