fork download
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. void readArray(n){
  5. int array[n][n];
  6. int x=0,y,largest=0;
  7. while(x<n){
  8. y=0;
  9. while(y<n){
  10. array[x][y] = pow(2,x+y);
  11. largest=(largest>array[x][y])?largest:array[x][y];
  12. y++;
  13. }
  14. x++;
  15. }
  16. y=0;
  17. while(y<n){
  18. x=0;
  19. while(x<n){
  20. if(largest<10) {printf("%1d", array[x][y]);}
  21. if(largest>=10 && largest<100) {printf("%2d", array[x][y]);}
  22. if(largest>=100 && largest<1000) {printf("%3d", array[x][y]);}
  23. if(largest>=1000 && largest<10000) {printf("%4d", array[x][y]);}
  24. if(largest>=10000 && largest<100000) {printf("%5d", array[x][y]);}
  25. if(largest>=100000 && largest<1000000) {printf("%6d", array[x][y]);}
  26. if(largest>=100000 && largest<1000000) {printf("%6d", array[x][y]);}
  27. if(largest>=1000000 && largest<10000000) {printf("%6d", array[x][y]);}
  28. if(largest>=10000000 && largest<100000000) {printf("%6d", array[x][y]);}
  29. if(largest>=100000000 && largest<1000000000){printf("%6d", array[x][y]);}
  30. /**/
  31. if(x!=n-1){printf(" " );}
  32. if(x==n-1){printf("\n");}
  33. x++;
  34. }
  35. y++;
  36. }
  37. printf("\n");
  38. }
  39.  
  40. int main() {
  41.  
  42. int n, x, y;
  43. scanf("%d",&n);
  44. while(n>0){
  45. readArray(n);
  46. scanf("%d",&n);
  47. }
  48.  
  49. return 0;
  50. }
Success #stdin #stdout 0s 2012KB
stdin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
stdout
1

1 2
2 4

 1  2  4
 2  4  8
 4  8 16

 1  2  4  8
 2  4  8 16
 4  8 16 32
 8 16 32 64

  1   2   4   8  16
  2   4   8  16  32
  4   8  16  32  64
  8  16  32  64 128
 16  32  64 128 256

   1    2    4    8   16   32
   2    4    8   16   32   64
   4    8   16   32   64  128
   8   16   32   64  128  256
  16   32   64  128  256  512
  32   64  128  256  512 1024

   1    2    4    8   16   32   64
   2    4    8   16   32   64  128
   4    8   16   32   64  128  256
   8   16   32   64  128  256  512
  16   32   64  128  256  512 1024
  32   64  128  256  512 1024 2048
  64  128  256  512 1024 2048 4096

    1     2     4     8    16    32    64   128
    2     4     8    16    32    64   128   256
    4     8    16    32    64   128   256   512
    8    16    32    64   128   256   512  1024
   16    32    64   128   256   512  1024  2048
   32    64   128   256   512  1024  2048  4096
   64   128   256   512  1024  2048  4096  8192
  128   256   512  1024  2048  4096  8192 16384

    1     2     4     8    16    32    64   128   256
    2     4     8    16    32    64   128   256   512
    4     8    16    32    64   128   256   512  1024
    8    16    32    64   128   256   512  1024  2048
   16    32    64   128   256   512  1024  2048  4096
   32    64   128   256   512  1024  2048  4096  8192
   64   128   256   512  1024  2048  4096  8192 16384
  128   256   512  1024  2048  4096  8192 16384 32768
  256   512  1024  2048  4096  8192 16384 32768 65536

     1     1      2     2      4     4      8     8     16    16     32    32     64    64    128   128    256   256    512   512
     2     2      4     4      8     8     16    16     32    32     64    64    128   128    256   256    512   512   1024  1024
     4     4      8     8     16    16     32    32     64    64    128   128    256   256    512   512   1024  1024   2048  2048
     8     8     16    16     32    32     64    64    128   128    256   256    512   512   1024  1024   2048  2048   4096  4096
    16    16     32    32     64    64    128   128    256   256    512   512   1024  1024   2048  2048   4096  4096   8192  8192
    32    32     64    64    128   128    256   256    512   512   1024  1024   2048  2048   4096  4096   8192  8192  16384 16384
    64    64    128   128    256   256    512   512   1024  1024   2048  2048   4096  4096   8192  8192  16384 16384  32768 32768
   128   128    256   256    512   512   1024  1024   2048  2048   4096  4096   8192  8192  16384 16384  32768 32768  65536 65536
   256   256    512   512   1024  1024   2048  2048   4096  4096   8192  8192  16384 16384  32768 32768  65536 65536 131072131072
   512   512   1024  1024   2048  2048   4096  4096   8192  8192  16384 16384  32768 32768  65536 65536 131072131072 262144262144

     1      2      4      8     16     32     64    128    256    512   1024
     2      4      8     16     32     64    128    256    512   1024   2048
     4      8     16     32     64    128    256    512   1024   2048   4096
     8     16     32     64    128    256    512   1024   2048   4096   8192
    16     32     64    128    256    512   1024   2048   4096   8192  16384
    32     64    128    256    512   1024   2048   4096   8192  16384  32768
    64    128    256    512   1024   2048   4096   8192  16384  32768  65536
   128    256    512   1024   2048   4096   8192  16384  32768  65536 131072
   256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144
   512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288
  1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576

     1      2      4      8     16     32     64    128    256    512   1024   2048
     2      4      8     16     32     64    128    256    512   1024   2048   4096
     4      8     16     32     64    128    256    512   1024   2048   4096   8192
     8     16     32     64    128    256    512   1024   2048   4096   8192  16384
    16     32     64    128    256    512   1024   2048   4096   8192  16384  32768
    32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536
    64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072
   128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144
   256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288
   512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576
  1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152
  2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304

     1      2      4      8     16     32     64    128    256    512   1024   2048   4096
     2      4      8     16     32     64    128    256    512   1024   2048   4096   8192
     4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384
     8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768
    16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536
    32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072
    64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144
   128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288
   256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576
   512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152
  1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304
  2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608
  4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216

     1      2      4      8     16     32     64    128    256    512   1024   2048   4096   8192
     2      4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384
     4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768
     8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536
    16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072
    32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144
    64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288
   128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576
   256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152
   512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304
  1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608
  2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216
  4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432
  8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864

     1      2      4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384
     2      4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768
     4      8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536
     8     16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072
    16     32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144
    32     64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288
    64    128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576
   128    256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152
   256    512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304
   512   1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608
  1024   2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216
  2048   4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432
  4096   8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864
  8192  16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728
 16384  32768  65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456