#javascript #loops #nested
#javascript #циклы #вложенный
Вопрос:
Что я здесь делаю не так, совершенно новичок в javascript и просто не понимаю. Попытка добавить значение переменной счетчика e в sum после каждой итерации sum .
<script>
var sum = 0;
var e = 5;
for(sum = 0; sum < 5; sum = e; sum ){
for(e = 5; e >= 0; e-- ){
document.write("sum= " sum ", e= " e "<br>");
}
}
</script>
Что я здесь делаю не так ☹
Комментарии:
1. Цикл for содержит 3 оператора, а не 4
2. Последняя часть в первом цикле должна выглядеть так
; sum = e, sum
, чтобы быть синтаксически корректной
Ответ №1:
let sum = 0; //Initialize sum with 0
for (let e = 1; e <= 5; e) { //Start from 1 to 5 (included)
sum = e; //Add value of e to sum
}
Обратите внимание, что цикл for должен содержать три утверждения:
Оператор 1 устанавливает переменную перед началом цикла (пусть e = 1).
Оператор 2 определяет условие для выполнения цикла (e должно быть меньше или равно 5).
Оператор 3 увеличивает значение ( e) каждый раз, когда выполняется блок кода в цикле.
Я предлагаю вам немного больше сосредоточиться на синтаксисе Javascript, есть много руководств по udemy, youtube, w3scooles и т. Д..
Ответ №2:
если я получил ваш вопрос, можете сделать так:
for(; sum < 5; sum = 1) {
if (e >= 0) {
console.log("sum= " sum ", e= " e "<br>");
e -= 1
}
}
Ответ №3:
Это сокращение поможет вам понять, что происходит.
var sum = 0;
var e = 5;
var count = 0;
for(sum = 0; sum < 5; sum = e, sum ) {
for(e = 5; e >= 0; e-- ){
document.write("sum= " sum ", e= " e "<br>");
if (count === 20) break;
count ;
}
if (count === 20) break;
}
Итак, sum
всегда 0
и, следовательно, бесконечный цикл. Это происходит потому sum = e, sum
, что ничего не делает. Потому что после завершения внутреннего цикла e
становится -1
и так, sum = sum 1; sum = sum - 1 (this is e)
не увеличивает sum
.
Итак, возможно, это то, что вы ищете:
var sum = 0;
var e = 5;
for(sum = 0; sum < 5; sum ) {
for(e = 5; e >= 0; e-- ){
document.write("sum= " sum ", e= " e "<br>");
}
}
Комментарии:
1. Спасибо, Аджит Шах, я совершенно запутался в этих вложенных циклах: (
2. @bombsaway, если мой ответ вам помог. Пожалуйста, примите или проголосуйте