RosettaCodeData/Task/Extend-your-language/Amazing-Hopper/extend-your-language-2.hopper
2023-07-01 13:44:08 -04:00

49 lines
1.8 KiB
Text

#include <jambo.h>
#defn Sitodassonverdaderas(*) ##CODEIF,{1},#GENCODE $$$*$$$ opción#ITV=0;#ATCMLIST;\
cpy(opción#ITV);and;#ENDGEN;,jnt(#ENDIF)
#synon Sitodassonverdaderas Sitodaslasopciones,Sitodasestas,Sitodas
#defn Sonverdaderas(*) jmp(%%CODEIF), %ENDIF:, {1}, #GENCODE $$$*$$$ #ATCMLIST;\
and;#ENDGEN;jnt(#ENDIF),
#defn Esla(_X_) jmp(%%CODEIF), %ENDIF:, {_X_}, jnt(#ENDIF),
#defn Esverdaderalaopción(_X_) jmp(%%CODEIF), %ENDIF:, {opción_X_}, jnt(#ENDIF),
#defn Sonverdaderaslasopciones(*) jmp(%%CODEIF), %ENDIF:,{1};#GENCODE $$$*$$$ {opción#LIST};\
and;#ENDGEN;jnt(#ENDIF),
#synon Sonverdaderaslasopciones Sonlasopciones
#synon Else Noesningunaopción?
#synon EndIf FindelSi
#define verdadera? ;
#synon verdadera? verdaderas?,verdadera,verdaderas,sonverdaderas,esverdadera
Main
True(v), True(x), True(y)
Si todas estas 'v, {0.025} Is equal to (10), x, y' son verdaderas
Set ("Todas las opciones son verdaderas")
Son verdaderas 'opción 2, opción 3, opción 4'
Set ("Sólo son verdaderas la igualdad, X e Y")
Son verdaderas las opciones '1,3,4'
Set ("Son verdaderas V, X e Y")
Son las opciones '1,3,4' verdaderas?
Set ("Son verdaderas V, X e Y")
Son verdaderas 'opción 1, opción 3'
Set ("Son verdaderas V y X")
/* podríamos seguir preguntando... */
Es verdadera la opción '2'
Set ("Al menos, la igualdad es verdadera")
Es la 'opción 4' verdadera?
Set ("Al menos, Y es verdadera")
No es ninguna opción?
Set ("Nada se cumple")
Fin del Si
Prnl
End