Как распечатать таблицу с обратным временем в Javascript - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь распечатать эту таблицу времени в обратном порядке, как на фотографии, но не могу понять, что мне нужно изменить, чтобы сделать это.

var digit = 9, multiplier = 9, textresult = "", result = 0;
while (digit > 0) {
    for (multiplier = 9; multiplier >= digit; multiplier--) {
      result = digit * multiplier;
        if (digit == multiplier) {
         textresult += digit + " x " + multiplier + " = " + result + " 
           <br>";}
        else {
             textresult += digit + " x " + multiplier + " = " + result + 
             "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";}
     }
     digit--;}
     strong textdocument.write(textresult);

Есть идеи?

expected result image

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Попробуйте это исправление

var digit = 1,
  textresult = "",
  max = 9;
while (digit <= max) {
  for (var multiplier = digit; multiplier <= max; multiplier++) {
    var result = digit * multiplier;
    textresult += digit + " * " + multiplier + " = " + result;
    if (10 > result) {
      textresult += " ";
    }
    if (max == multiplier) {
      textresult += "
"; } else { textresult += " "; } } digit++; } textresult += "
"; document.write (textresult);
0 голосов
/ 11 сентября 2018

Считайте от digit от 1 вверх, а не от 9 вниз. В каждом внутреннем цикле инициализируйте multiplier до digit вместо 9 и, аналогично, подсчитайте с multiplier:

var digit = 1,
  textresult = "";
while (digit < 10) {
  for (let multiplier = digit; multiplier < 10; multiplier++) {
    const result = digit * multiplier;
    textresult += digit + " x " + multiplier + " = " + result + (multiplier === 9 ? '<br>' : "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");
    }
    digit++;
  }
  document.write(textresult);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...