#include<stdio.h> unsigned int Fib(unsigned int n) { int f,f0=0,f1=1,i; if (n==0) return 0; else if (n==1) return 1; else for (i=1;i<n;i++) { f=f1+f0; f0=f1; f1=f; } return f; } int main() { unsigned int wynik,wynik2,l,t,n; char *wyjscie[10]; scanf("%d",&t); for(l=0;l<t;l++) { scanf("%d",&n); int ok=0; int i=1; wynik=Fib(1); while ((wynik<=n)&&(ok!=1)) { int j=1; wynik2=Fib(1); while ((wynik2<=n)&&(ok!=1)) { if (wynik*wynik2==n) ok=1; else { j++; wynik2=Fib(j); } } i++; wynik=Fib(i); } if (ok==1) wyjscie[l]="TAK"; else wyjscie[l]="NIE"; } for (l=0;l<t;l++){ printf("%s\n",wyjscie[l]); } return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #include<stdio.h> unsigned int Fib(unsigned int n) { int f,f0=0,f1=1,i; if (n==0) return 0; else if (n==1) return 1; else for (i=1;i<n;i++) { f=f1+f0; f0=f1; f1=f; } return f; } int main() { unsigned int wynik,wynik2,l,t,n; char *wyjscie[10]; scanf("%d",&t); for(l=0;l<t;l++) { scanf("%d",&n); int ok=0; int i=1; wynik=Fib(1); while ((wynik<=n)&&(ok!=1)) { int j=1; wynik2=Fib(1); while ((wynik2<=n)&&(ok!=1)) { if (wynik*wynik2==n) ok=1; else { j++; wynik2=Fib(j); } } i++; wynik=Fib(i); } if (ok==1) wyjscie[l]="TAK"; else wyjscie[l]="NIE"; } for (l=0;l<t;l++){ printf("%s\n",wyjscie[l]); } return 0; } |