Как с помощью вложенного цикла вывести 0 либо 1 либо х?
Помогите с задачей, пожалуйста.
С помощью вложенных циклов, нужно вывести рисунок:
10x01x
10x01x
10x01x
Внешний цикл выводит перенос строки br. Вложенный цикл от 0 до 6 выводит либо 0 либо 1 либо х.
Не могу додуматься, как сделать?
function t6() {
let out6 = '';
for (let i = 0; i < 3; i++) {
for (let k = 0; k < 6; k++) {
out6 += k;
}
out6 += '<br>';
}
document.querySelector('.out-6').innerHTML = out6;
}
document.querySelector('.b-6').onclick = t6;
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button class="b-6">Task-6</button>
<div class="out-6"></div>
Ответы (3 шт):
Автор решения: Danil
→ Ссылка
let o6 = document.querySelector('.out-6')
for (let i = 1; i < 4 ; i++) {
for (let k = 1; k < 25; k++) {
if((k % 2 == 0) && !(k % 3 == 0)){
o6.innerHTML += '0';
}else if ((k % 2 == 1) && !(k % 3 == 0)) {
o6.innerHTML += '1';
}else{
o6.innerHTML += 'x';
}
}
o6.innerHTML += '<br>';
}
Автор решения: Sergey D.
→ Ссылка
function t6() {
let out6 = document.querySelector('.out-6');
for (let i = 1; i <= 3; i++) {
for (let k = 0; k < 6; k++) {
if (k == 2 || k == 5) {
out6.innerHTML += 'x';
}
else if (k % 2 == 0) {
out6.innerHTML += 1;
}
else {
out6.innerHTML += 0;
}
}
out6.innerHTML += '<br>';
}
}
t6();
Автор решения: kostik-rak
→ Ссылка
Судя по образцу каждый третий проход цикла должен быть 'x', значит нужна проверка на кратность трем, но цикл по условию начинает работу с 0 а не с 1 и делать (k%3==0) не получится так как по счетчику цикла k будет равно 2 когда необходимо давать 'x' поэтому надо в проверке добавлять +1, выглядит это так (k + 1) % 3 == 0
function t6() {
let out = document.querySelector('.out-6');
let str = '';
for (let i = 0; i < 3; i++) {
str += '<br>';
for (let k = 0; k < 6; k++) {
if ((k + 1) % 3 == 0) {//
str += 'x';
} else if (k % 2 == 0) {
str += 1;
} else {
str += 0;
}
}
}
out.innerHTML = str;
}
document.querySelector('.b-6').onclick = t6;
<button class="button-primary b-6">Task</button>
<div class="out-6"></div>