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

fizz buzz

Name: Anonymous 2011-10-15 16:47

I have achieved my lifelong dream. Finally a fizz buzz program with 0 comparison operator.

#include <stdio.h>
#include <stdlib.h>

void main(int j){
  const char* s[] = {"%d\n", "fizz\n", "buzz\n", "fizzbuzz\n"};
  printf(s[3-!!(j%3)-2*!!(j%5)], j);
  (main+((exit-main)*(j/100)))((1-j/100)*j+1);
}

Name: Anonymous 2011-10-15 18:44

meh, could be more clean. move recursion to function "e"
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
typedef uintptr_t p;
char *s[] = {"%d\n", "fizz\n", "buzz\n", "fizzbuzz\n"};
void e(int i) {
   
    printf(s[(!(i % 3)) | ((!(i % 5)) << 1)], i);
    (*((void(*)(int))((p)(e) + ((p)(exit) -
    (p)(e)) * (i / 100))))((1-i/100)*(i + 1));
}
int main() {
        e(1);
    return 0;
}

not sure if it is still warningless

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