operator: is-mod
description:
is-mod[n] ket
answers yes or no, if the given number is mod n
examples:
is-mod[3] |96>
|yes>
is-mod[17] |number: 51>
|yes>
is-mod[5] |51>
|no>
-- if the ket is not a float value, return |no>
is-mod[7] |the cat>
|no>
-- the fizzbuzz exercise:
fizzbuzz |*> #=> print if-mod-5 if-mod-3 if-mod-15 |_self>
if-mod-15 |*> #=> if(is-mod[15] |_self>, |FizzBuzz>, |_self>)
if-mod-3 |*> #=> if(is-mod[3] |_self>, |Fizz>, |_self>)
if-mod-5 |*> #=> if(is-mod[5] |_self>, |Buzz>, |_self>)
-- now, find the results:
fizzbuzz range(|1>, |20>)
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
Buzz
|1> + |2> + 5|Fizz> + |4> + 3|Buzz> + |7> + |8> + |11> + |13> + |14> + |FizzBuzz> + |16> + |17> + |19>
-- or, if you want the sequence version:
fizzbuzz sp2seq range(|1>, |20>)
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
Buzz
|1> . |2> . |Fizz> . |4> . |Buzz> . |Fizz> . |7> . |8> . |Fizz> . |Buzz> . |11> . |Fizz> . |13> . |14> . |FizzBuzz> . |16> . |17> . |Fizz> . |19> . |Buzz>
see also:
round, times-by, divide-by, int-divide-by, plus, minus, mod
Home