capitalex hat die Gist bearbeitet 10 months ago. Zu Änderung gehen
1 file changed, 24 insertions
fizzbuzz.factor(Datei erstellt)
| @@ -0,0 +1,24 @@ | |||
| 1 | + | USING: io kernel math math.functions math.parser ranges | |
| 2 | + | sequences ; | |
| 3 | + | IN: rosetta-code.fizz-buzz | |
| 4 | + | ||
| 5 | + | PREDICATE: fizz < integer 3 divisor? ; | |
| 6 | + | PREDICATE: buzz < integer 5 divisor? ; | |
| 7 | + | ||
| 8 | + | INTERSECTION: fizzbuzz fizz buzz ; | |
| 9 | + | ||
| 10 | + | GENERIC: fizzbuzz>string ( n -- str ) | |
| 11 | + | ||
| 12 | + | M: fizz fizzbuzz>string | |
| 13 | + | drop "Fizz" ; | |
| 14 | + | ||
| 15 | + | M: buzz fizzbuzz>string | |
| 16 | + | drop "Buzz" ; | |
| 17 | + | ||
| 18 | + | M: fizzbuzz fizzbuzz>string | |
| 19 | + | drop "FizzBuzz" ; | |
| 20 | + | ||
| 21 | + | M: integer fizzbuzz>string | |
| 22 | + | number>string ; | |
| 23 | + | ||
| 24 | + | MAIN: [ 1 100 [a..b] [ fizzbuzz>string print ] each ] | |
Neuer
Älter