// Forward declarations
int atoi(char (*string
)); int puts(char (*string
)); char (*strcpy(char (*dst
), char (*src
))); void string_of_int(int n, char (*s));
int main(int argc, char (*(argv[])));
// Definitions
int atoi(char (*string
)); int puts(char (*string
)); char (*strcpy(char (*dst
), char (*src
))); void string_of_int(int n, char (*s))
#line 8 "examples/fizzbuzz.ion"
{
int negative = 0;
#line 11 "examples/fizzbuzz.ion"
if (((n) < (0)))
#line 11 "examples/fizzbuzz.ion"
{
#line 12 "examples/fizzbuzz.ion"
n=(-n);
#line 13 "examples/fizzbuzz.ion"
negative=1;
}
#line 16 "examples/fizzbuzz.ion"
if (((n) < (0)))
#line 16 "examples/fizzbuzz.ion"
{
#line 17 "examples/fizzbuzz.ion"
#line 19 "examples/fizzbuzz.ion"
return;
}
#line 21 "examples/fizzbuzz.ion"
if ((!n))
#line 21 "examples/fizzbuzz.ion"
{
int i = 0;
#line 23 "examples/fizzbuzz.ion"
s[i]='0';
#line 23 "examples/fizzbuzz.ion"
i++;
#line 24 "examples/fizzbuzz.ion"
s[i]='\x00';
#line 24 "examples/fizzbuzz.ion"
i++;
#line 26 "examples/fizzbuzz.ion"
return;
}
int digitCount = 0;
#line 30 "examples/fizzbuzz.ion"
if (negative)
#line 30 "examples/fizzbuzz.ion"
{
#line 31 "examples/fizzbuzz.ion"
digitCount++;
}
int k = n;
#line 34 "examples/fizzbuzz.ion"
while (((k) > (0)))
#line 34 "examples/fizzbuzz.ion"
{
#line 35 "examples/fizzbuzz.ion"
digitCount+=1;
#line 36 "examples/fizzbuzz.ion"
k=((k) / (10));
}
#line 39 "examples/fizzbuzz.ion"
s[digitCount]=0;
#line 40 "examples/fizzbuzz.ion"
k=n;
int i = ((digitCount) - (1));
#line 43 "examples/fizzbuzz.ion"
do
#line 43 "examples/fizzbuzz.ion"
{
#line 44 "examples/fizzbuzz.ion"
s[i]=(('0') + (((k) % (10))));
#line 45 "examples/fizzbuzz.ion"
k/=10;
#line 46 "examples/fizzbuzz.ion"
i--;
}
#line 43 "examples/fizzbuzz.ion"
while(((k) > (0)));
#line 49 "examples/fizzbuzz.ion"
if (negative)
#line 49 "examples/fizzbuzz.ion"
{
#line 50 "examples/fizzbuzz.ion"
s[0]='-';
}
}
static char * ARGV[] = { "myprog", "100", "world", 0 };
static int ARGC=3;
int main(int argc, char (*(argv[])))
#line 55 "examples/fizzbuzz.ion"
{
argc = ARGC;
argv = ARGV;
#line 56 "examples/fizzbuzz.ion"
if (((argc) < (2)))
#line 56 "examples/fizzbuzz.ion"
{
#line 57 "examples/fizzbuzz.ion"
puts("usage: fizzbuzz N"); #line 58 "examples/fizzbuzz.ion"
puts("\tprints fizzuzz sequence up to n"); #line 60 "examples/fizzbuzz.ion"
return 1;
}
int i = 1;
#line 65 "examples/fizzbuzz.ion"
while (((i) <= (n)))
#line 65 "examples/fizzbuzz.ion"
{
char (buf[256])= {0};
#line 67 "examples/fizzbuzz.ion"
if (((((i) % (15))) == (0)))
#line 67 "examples/fizzbuzz.ion"
{
#line 68 "examples/fizzbuzz.ion"
} else if (((((i) % (3))) == (0)))
#line 69 "examples/fizzbuzz.ion"
{
#line 70 "examples/fizzbuzz.ion"
} else if (((((i) % (5))) == (0)))
#line 71 "examples/fizzbuzz.ion"
{
#line 72 "examples/fizzbuzz.ion"
}
else
#line 73 "examples/fizzbuzz.ion"
{
#line 74 "examples/fizzbuzz.ion"
string_of_int(i, buf);
#line 75 "examples/fizzbuzz.ion"
}
#line 77 "examples/fizzbuzz.ion"
i++;
}
}