24 game: Difference between revisions

1,317 bytes added ,  3 months ago
added RPL
No edit summary
(added RPL)
Line 10,256:
sorry, you used the illegal digit 9
</pre>
 
=={{header|RPL}}==
{{works with|HP|49/50}}
« '''IF''' DUP TYPE 9. ≠ '''THEN''' { } +
'''ELSE'''
'''CASE'''
OBJ→ SWAP 2. ≠ '''THEN''' DROP 0 '''END'''
"+-*/" SWAP →STR POS NOT '''THEN''' DROP 0 '''END'''
'''END'''
<span style="color:blue">GET4</span> SWAP <span style="color:blue">GET4</span> +
'''END'''
» '<span style="color:blue">GET4</span>' STO <span style="color:grey">@ ''( 'expression' → { numbers} )''</span>
« 1 CF
« RAND 9 * CEIL R→I » 'x' 1 4 1 SEQ SORT <span style="color:grey">@ generate 4 numbers</span>
'''WHILE''' 1 FC? '''REPEAT'''
"Make 24 with" OVER →STR 2 OVER SIZE 2 - SUB +
{ "'" ALG V } INPUT <span style="color:grey">@ asks for an evaluable string</span>
CLLCD DUP TAIL 1 DISP
STR→ DUP <span style="color:blue">GET4</span>
'''CASE''' DUP 0 POS '''THEN''' DROP2 "Forbidden operator" '''END'''
SORT 3 PICK '''THEN''' DROP "Bad number" '''END'''
EVAL DUP →NUM 3 DISP 24 == '''THEN''' 1 SF "You won!" '''END'''
"Failed to get 24"
'''END'''
2 DISP 2 WAIT
'''END''' DROP
» '<span style="color:blue">GAM24</span>' STO
 
=={{header|Ruby}}==
1,150

edits