#include #include int main (int argc, char **argv) { int a, b, c, d, e, f, x; if (argc < 3) { printf ("USAGE: %s \n", argv[0]); exit (0); } a = atoi (argv[1]); b = atoi (argv[2]); printf ("You entered (%i, %i) for (a, b).\n", a, b); if (a == 0) goto ZERO; if (b == 0) goto ZERO; if (a == 1) goto AONE; if (b == 1) goto BONE; if (b > 1) goto BPOS; c = 0; BNEG: d = a; if (d > 0) goto DPOS; DNEG: c = c + 1; d = d + 1; if (d == 0) goto DEND; goto DNEG; DPOS: c = c - 1; d = d - 1; if (d > 0) goto DPOS; DEND: b = b + 1; if (b == 0) goto BEND; goto BNEG; BEND: x = c; goto END; BPOS: e = a; BPOSLOOP: f = a; if (f > 0) goto FPOS; FNEG: e = e - 1; f = f + 1; if (f == 0) goto FEND; goto FNEG; FPOS: e = e + 1; f = f - 1; if (f > 0) goto FPOS; FEND: b = b - 1; if (b > 1) goto BPOSLOOP; x = e; goto END; AONE: x = b; goto END; BONE: x = a; goto END; ZERO: x = 0; END: printf ("x = a * b\n"); printf ("x = %i\n", x); return 1; }