Javascript Structure For

0

This sequence does not give the expected results. The result of "n" should be 512 and not 2 as given as written.

var n=1;
for (var t1=0;t1<3;t1++){  
  for (var t2=0;t2<3;t2++){ 
    for (var t3=0;t3<3;t3++){  
      for (var t4=0;t4<3;t4++){ 
        for (var t5=0;t5<3;t5++){  
          for (var t6=0;t6<3;t6++){ 
            for (var t7=0;t7<3;t7++){  
              for (var t8=0;t8<3;t8++){
                for (var t9=0;t9<3;t9++){  
                  n=n+1;
                  document.write(n + "<br");
                }
              }
            }
          }
        }
      }
    }
  }
}
    
asked by csvicuna 11.06.2018 в 17:56
source

2 answers

2

Your code, once you replace your <br with </br> will show all the numbers from 0 to 19685 or what is the same 3^9 + 1 .

If what you want to show are the 512 first number bone 2^9 you should leave your code like this:

<html>

  <script type="text/javascript">
    var n = 0;
    for (var t1 = 0; t1 < 2; t1++) {
      for (var t2 = 0; t2 < 2; t2++) {
        for (var t3 = 0; t3 < 2; t3++) {
          for (var t4 = 0; t4 < 2; t4++) {
            for (var t5 = 0; t5 < 2; t5++) {
              for (var t6 = 0; t6 < 2; t6++) {
                for (var t7 = 0; t7 < 2; t7++) {
                  for (var t8 = 0; t8 < 2; t8++) {
                    for (var t9 = 0; t9 < 2; t9++) {
                      n = n + 1;
                      document.write(n  + "</br>");
                    }
                  }
                }
              }
            }
          }
        }
      }
    }

  </script>

</html>

And if you just want to show 512 like this:

<html>

  <script type="text/javascript">
    var n = 0;
    for (var t1 = 0; t1 < 2; t1++) {
      for (var t2 = 0; t2 < 2; t2++) {
        for (var t3 = 0; t3 < 2; t3++) {
          for (var t4 = 0; t4 < 2; t4++) {
            for (var t5 = 0; t5 < 2; t5++) {
              for (var t6 = 0; t6 < 2; t6++) {
                for (var t7 = 0; t7 < 2; t7++) {
                  for (var t8 = 0; t8 < 2; t8++) {
                    for (var t9 = 0; t9 < 2; t9++) {
                      n = n + 1;
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
    document.write(n  + "</br>");

  </script>

</html>
    
answered by 11.06.2018 в 18:15
0

You need to close the <br /> tag.

Change " <br " to " <br/> "

Then, if I did not understand correctly. You only want it to show 1 value. You should add that value to a variable, and at the end of all for print that variable.

    
answered by 11.06.2018 в 18:08