Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
71
Task/24-game/Falcon/24-game.falcon
Normal file
71
Task/24-game/Falcon/24-game.falcon
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
load compiler
|
||||
|
||||
function genRandomNumbers( amount )
|
||||
rtn = []
|
||||
for i in [ 0 : amount ]: rtn += random( 1, 9 )
|
||||
return( rtn )
|
||||
end
|
||||
|
||||
function getAnswer( exp )
|
||||
ic = ICompiler()
|
||||
ic.compileAll(exp)
|
||||
|
||||
return( ic.result )
|
||||
end
|
||||
|
||||
function validInput( str )
|
||||
for i in [ 0 : str.len() ]
|
||||
if str[i] notin ' ()[]0123456789-+/*'
|
||||
> 'INVALID Character = ', str[i]
|
||||
return( false )
|
||||
end
|
||||
end
|
||||
|
||||
return( true )
|
||||
end
|
||||
|
||||
printl('
|
||||
The 24 Game
|
||||
|
||||
Given any four digits in the range 1 to 9, which may have repetitions,
|
||||
Using just the +, -, *, and / operators; and the possible use of
|
||||
brackets, (), show how to make an answer of 24.
|
||||
|
||||
An answer of "q" will quit the game.
|
||||
An answer of "!" will generate a new set of four digits.
|
||||
Otherwise you are repeatedly asked for an expression until it evaluates to 24
|
||||
|
||||
Note: you cannot form multiple digit numbers from the supplied digits,
|
||||
so an answer of 12+12 when given 1, 2, 2, and 1 would not be allowed.
|
||||
')
|
||||
|
||||
num = genRandomNumbers( 4 )
|
||||
|
||||
while( true )
|
||||
|
||||
>> "Here are the numbers to choose from: "
|
||||
map({ a => print(a, " ") }, num)
|
||||
>
|
||||
|
||||
exp = input()
|
||||
|
||||
switch exp
|
||||
case "q", "Q"
|
||||
exit()
|
||||
|
||||
case "!"
|
||||
> 'Generating new numbers list'
|
||||
num = genRandomNumbers( 4 )
|
||||
|
||||
default
|
||||
if not validInput( exp ): continue
|
||||
|
||||
answer = getAnswer( exp )
|
||||
|
||||
if answer == 24
|
||||
> "By George you GOT IT! Your expression equals 24"
|
||||
else
|
||||
> "Ahh Sorry, So Sorry your answer of ", answer, " does not equal 24."
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue