Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

fizzbuzz

Name: Anonymous 2012-03-13 7:15

#include <stdio.h>
int main(void) {
    int i = 0;
    char *s[] = {"%d\n", "fizz\n", "buzz\n", "fizzbuzz\n"};
    while (i++ < 100)
        printf(s[(!(i%3))|((!(i%5))<<1)], i);
    return 0;
}


http://codepad.org/nkFXJqlG

Name: Anonymous 2012-03-13 17:17

USING: kernel io math math.functions math.ranges math.parser
sequences ;
IN: FizzBuzz

PREDICATE: fizz < integer  3 divisor? ;
PREDICATE: buzz < integer  5 divisor? ;
INTERSECTION: f&b fizz buzz ;

GENERIC: say ( n -- )
M: integer say   number>string print ;
M: fizz say   drop "Fizz" print ;
M: buzz say   drop "Buzz" print ;
M: f&b say   drop "FizzBuzz" print ;

: fizzbuzz ( -- ) 100 [1,b] [ say ] each ;

MAIN: fizzbuzz

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List