Возникли проблемы с этой основной проблемой HW цикла цикла - PullRequest
1 голос
/ 07 июля 2019

Так что мне поручили напечатать текст песни ниже. Хотя мой код печатает правильно, класс, который я заканчиваю в Udacity, не примет его. Есть идеи, в чем может быть проблема? Спасибо большое за вашу помощь. Я включил инструкции, а также мой код и вывод на консоль ниже. Еще раз спасибо.

var num = 99;

while ( /* your stop condition goes here */ num >= 1) {

  // check value of num
  newNum = num - 1;

  // print lyrics using num
  if (num === 2) {
    console.log(num + " bottles of juice on the wall! " + num + " bottles of juice! Take one down, pass it around ... " + newNum + " bottle of juice on the wall!")
  } else if (num === 1) {
    console.log(num + " bottle of juice on the wall! " + num + " bottle of juice! Take one down, pass it around ... " + newNum + " bottles of juice on the wall!")
  } else {
    console.log(num + " bottles of juice on the wall! " + num + " bottles of juice! Take one down, pass it around ... " + newNum + " bottles of juice on the wall!")
  }
  // don't forget to check pluralization on the last line!
  // decrement num
  num = num - 1;
}

Направления: Напишите цикл, который распечатывает следующую песню. Начиная с 99 и заканчивая 1 бутылкой.

99 бутылок сока на стену! 99 бутылок сока! Снеси один, разнеси ... 98 бутылок сока на стене! 98 бутылок сока на стену! 98 бутылок сока! Снеси один, разнеси ... 97 бутылок сока на стене! ... 2 бутылки сока на стену! 2 бутылки сока! Сними один, разнеси ... 1 бутылка сока на стене! 1 бутылка сока на стену! 1 бутылка сока! Сними один, разнеси ... 0 бутылок сока на стене! Некоторые заметки:

Обратите внимание на множественное число слова «бутылка», когда вы переходите от 2 бутылок к 1 бутылке. Ваш текстовый редактор может попытаться автоматически исправить ваши эллипсы (...) на символ эллипсов (...). Не используйте символ эллипсов для этого теста; вместо этого используйте три последовательных периода.

Udacity выдает следующие сообщения:

Что хорошо?

  • Ваш код должен иметь переменную num со начальным значением 99
  • Ваш код должен включать цикл while
  • Ваш цикл while должен иметь условие остановки

Что пошло не так

  • Ваш цикл while выдаёт неверный вывод

Обратная связь

Не все еще правильно, но вы близки!

1 Ответ

0 голосов
/ 07 июля 2019

Вот другая версия, где мы используем взаимозаменяемые переменные, это позволяет нам иметь одну console.log(). Я не вижу необходимости проверять больше 2, потому что цикл while будет выполняться только если num > 1

var num = 99
var bottle1 = 'bottles'
var bottle2 = 'bottles'

while (num >= 1) {

  if (num === 2) {
    bottle1 = 'bottles'
    bottle2 = 'bottle'
  }

  if (num === 1) {
    bottle1 = 'bottle'
    bottle2 = 'bottles'
  }

  console.log(`${num} ${bottle1} of juice on the wall!, ${num} ${bottle1} of juice! Take one down, pass it around... ${num - 1} ${bottle2} of juice on the wall!`)

    --num
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...