D'accord ceci est ma quatrième question aujourd'hui sur Scheme, encore assez nouveau à Scheme, comme je l'avais besoin pour un de ma sous-fonction I asked earlier dans la journée.Comment assigner Mulitpule valeur cachée dans la liste dans le schéma
Fondamentalement, cela me retournera la différence de 2 listes. Dites que vous avez (1,5)
et (5,1)
cette fonction devrait me revenir 8. Comme c'est la distance entre l
-w
Voici ce que j'ai. Note: si je change la (liste (- (voiture l) (voiture w))) en (écrire .....) la fonction fonctionnera, mais en sortie 2 nombre dont je n'ai aucune idée comment utiliser ces nombres comme entrées de mon autre fonction.
J'essaie donc de le mettre en liste, mais ne fonctionne pas vraiment, il me retourne sans erreur, mais des trucs bizarres
(define (difference l w) ; calc heuristic function estimation
(if (> (car l) (car w))
(list (- (car l) (car w)))
(if (< (car l) (car w))
(list (- (car w) (car l)))))
(if (< (list-ref l 1) (list-ref w 1))
(list (- (list-ref l 1) (list-ref w 1)))
(if (> (list-ref l 1) (list-ref w 1))
(list (- (list-ref w 1) (list-ref l 1)))))
)
Voici le code retourné me
> (difference '(9 1) '(3 1))
#<procedure:...0\assigment 2.ss:50:3>
Des idées? essayer d'utiliser lambda fin-up la même chose.
Quelqu'un ?? help plz – Jonathan
Je ne suis pas sûr de comprendre ce que votre fonction essaie de faire. –
fondamentalement, j'essaie de calculer la différence de 2 éléments de la liste 2. Dire que j'ai obtenu 1 de mon premier article dans la liste A et 2 de mon premier article dans la liste B. Je veux voir lequel est le plus grand d'abord, puis faire la soustraction, il me renvoie la différence du 1er élément de la liste. Même chose avec le deuxième élément de la liste. Une fois que j'ai eu les deux numéros, je les ai additionnés, j'ai eu la différence totale, dans mon cas, la distance de A à B – Jonathan