0
votes

Appliquer des opérations sur le schéma (R5RS) avec une condition

J'essaie de créer un programme de régime (langage R5RS) qui applique une opération à un ensemble de listes, en fonction de la taille d'un numéro sur une liste.

de sorte que la fonction ressemble à < PRE> XXX

La condition est, si f (AB) où un <5, puis appliquer le fonctionnement F (AB).

mais si A est égal ou supérieur à 5, appliquez g (A b). (La deuxième opération)

Ce sonne déroutant, mais un exemple visuel doit le refroidir: donc, un exemple serait xxx

retournerait: xxx

Un autre exemple serait xxx

retours xxx

i ' VE a abordé les opérations sur le schéma avant, mais la partie de condition me jette et je ne sais pas où commencer. Toute aide est appréciée!


0 commentaires

3 Réponses :


0
votes

version 1 : Si vous utilisez des procédures + et * au lieu de symboles '+ < / code> et '* : xxx

version 2 : vous pouvez faire une liste des symboles correspondant d'association aux procédures xxx

version 3 : utilise eval xxx


0 commentaires

0
votes

Supposons que les procédures sont données telles que * et + .

Ensuite, l'opération sur une de ces sous-liste ressemblerait à xxx

résumé les procédures données: xxx

Maintenant, vous pouvez transformer une liste avec * et + : xxx

et abstrait les procédures: xxx


0 commentaires

0
votes

Si vous supposez que vous n'avez pas à mapper entre les noms de fonction et les fonctions, une définition évidente est d'utiliser Appliquer : xxx


0 commentaires