/* Realizati un program care sa afiseze un tabel (cu trei coloane) care sa contina n, reprezentarea binara a lui 2^n, reprezentarea binara a lui (2^n)-1, pentru n = 0, 1, 2, ..., 32. Apoi, afisati un tabel (tot cu trei coloane) care sa contina n, 10^n si (10^n)-1 pentru n = 0, 1, 2, ..., 7 (in baza zece). Ce asemanare observati ? */ #include #include int main() { int i,j; for(i=1;i<=76;i++) printf("-"); printf("\n|n | 2^n"); for(i=1;i<=30;i++) printf(" "); printf("| 2^n-1"); for(i=1;i<=27;i++) printf(" "); printf("|\n"); for(i=1;i<=76;i++) printf("-"); for(i=0;i<=32;i++) { printf("\n|%2d |\t",i); //afisam 2^n in binar for(j=31;j>=i+1;j--) printf(" "); if(i<32) //2^32 depaseste precizia unui int pe 32 biti printf("1"); for(j=i-1;j>=0;j--) printf("0"); printf("| "); //afisam 2^n-1 for(j=31;j>=i;j--) printf(" "); for(j=i-1;j>=0;j--) printf("1"); printf(" |"); } printf("\n"); for(i=1;i<=76;i++) printf("-"); printf("\n\n\n\n"); for(i=1;i<=76;i++) printf("-"); printf("\n|n | 10^n"); for(i=1;i<=30;i++) printf(" "); printf("| 10^n-1"); for(i=1;i<=27;i++) printf(" "); printf("|\n"); for(i=1;i<=76;i++) printf("-"); for(i=0;i<=7;i++) printf("\n|%3d|\t%32d| %32d |",i,(int)pow(10,i),(int)(pow(10,i)-1)); printf("\n"); for(i=1;i<=76;i++) printf("-"); printf("\n\n\n\\n"); return 0; }