#include <stdio.h> char jedynkowo[50000]; int ileJedynek; void piszJedynki(int x){ int i; for(i = 1;i<x; i++){ strcat(jedynkowo,"(1+1)*"); ileJedynek+=2; } strcat(jedynkowo,"(1+1)"); ileJedynek+=2; //printf("|JED:%d|",ileJedynek); } int main() { int a,n,i,j,licznik,byla; scanf(" %d",&n); for(i=0; i<n; i++){ scanf(" %d",&a); strcpy(jedynkowo,""); ileJedynek=0; if(a==1) { printf("1\n"); continue; } if(a%2==1) { printf("1+"); a--; ileJedynek++; } licznik = 0; byla = 0; do{ if(a%2==1){ if(byla==1) strcat(jedynkowo,"+"); piszJedynki(licznik); byla=1; } a=a/2; //printf("|a:%d|",a); licznik++; if(ileJedynek>100) { printf("NIE\n"); break; } }while(a>0); if(ileJedynek<=100) printf("%s\n",jedynkowo); } 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> char jedynkowo[50000]; int ileJedynek; void piszJedynki(int x){ int i; for(i = 1;i<x; i++){ strcat(jedynkowo,"(1+1)*"); ileJedynek+=2; } strcat(jedynkowo,"(1+1)"); ileJedynek+=2; //printf("|JED:%d|",ileJedynek); } int main() { int a,n,i,j,licznik,byla; scanf(" %d",&n); for(i=0; i<n; i++){ scanf(" %d",&a); strcpy(jedynkowo,""); ileJedynek=0; if(a==1) { printf("1\n"); continue; } if(a%2==1) { printf("1+"); a--; ileJedynek++; } licznik = 0; byla = 0; do{ if(a%2==1){ if(byla==1) strcat(jedynkowo,"+"); piszJedynki(licznik); byla=1; } a=a/2; //printf("|a:%d|",a); licznik++; if(ileJedynek>100) { printf("NIE\n"); break; } }while(a>0); if(ileJedynek<=100) printf("%s\n",jedynkowo); } return 0; } |