#include #include int secti(int,int,int,int&); int main() { int a,b,c,k,var,cont,scan,buff; while(1) { cont = 0; scan = 0; scanf("%d %d %d %d",&a,&b,&c,&k); buff = (int)pow(2,k); if(a==0 && b==0 && c==0 && k==0) break; for(var=a;var!=b;var = secti(var,c,k,scan)) { cont++; // check forever if(var>a && scan==1) { scan = 0; if(buff==var) break; else buff=var; } } if(buff==var) printf("FOREVER"); else printf("%d\n",cont); } return 0; } int secti(int a,int b,int k,int &scan) { int c; c = a+b; if(c>(int)pow(2,k)) { c = c % (int)pow(2,k); scan = 1; } return c; }