#include unsigned fib[42]; int fib2num(char *s) { int len = strlen(s); int a=0, i; for (i=0; i=0; i--) { if (a>=fib[i]) { a-=fib[i]; printf("1"); zero++; } else { if (zero || i==0) printf("0"); else if (i=0; i--) if (a>=fib[i]) return i+1; return 1; } void printfib(unsigned a, unsigned b) { int i, l = llen(a+b); printf(" "); num2fib(l,a); printf("\n+ "); num2fib(l,b); printf("\n "); for (i=0; i