Prologue comment imprimer les 3 premiers éléments dans une liste
Comment puis-je imprimer les 3 premiers éléments dans une liste.
J'ai une méthode d'impression
print([]).
print([X]) :- !, write(X).
print([X|T]) :- write(X), write(', '), print(T), nl.
Je pensais ajouter une condition à vérifier n chaque fois que l'impression n-1 si n=0 stop.
Alors pourquoi ne pas essayer de le faire?
ya si java ou c# est plus facile, mais prolog aucune idée de comment commencer, donc essayer de poster la question sur stackoverflow.
Alors pourquoi ne pas essayer de le faire?
ya si java ou c# est plus facile, mais prolog aucune idée de comment commencer, donc essayer de poster la question sur stackoverflow.
OriginalL'auteur user236501 | 2011-10-12
Vous devez vous connecter pour publier un commentaire.
En Prolog, typique de la façon de mettre en œuvre itération est la récursivité:
Si nous avons atteint zéro ou avoir une liste vide, ne rien faire. Si nous devons faire quelque chose, l'impression du premier élément de la liste, calculer la nouvelle
N
et de manière récursive s'appeler lui-même.La coupe (
!
) dans la première clause est nécessaire, sinon, nous aurions besoin d'un état pourN
dans la dernière.OriginalL'auteur svick
Si vous avez toujours au moins de l'arbre des éléments ist très simple
OriginalL'auteur Joe Lehmann