Хотите улучшить этот вопрос? Добавьте больше подробностей и уточните проблему, отредактировав это сообщение.
Закрыт 2 года назад.
let x = [
['box.1',['no.1','no.2','no.3']],
['box.2',['no.1','no.2','no.3']],
['box.3',['no.1','no.2','no.3']],
['box.4',['no.1','no.2','no.3']],
['box.5',['no.1','no.2','no.3']],
['box.6',['no.1','no.2','no.3']],
['box.7',['no.1','no.2','no.3']],
['box.8',['no.1','no.2','no.3']],
['box.9',['no.1','no.2','no.3']],
['box.10',['no.1','no.2','no.3']],
];
function solution(x){
for(let i=0;i<x.length;i++){
for(let j=0; j<i;j++){
x.split('.')
}
}
}
Вопрос из сайта с задачами: есть коробки, внутри которых помещаются три маленьких коробки: номера первых трёх маленьких коробок։
По той же логике можем сказать, что box.3,no.2 это 8-ая маленькая коробка. нужно написать функцию solution которая на входе получает код box а на выходе получает порядковый номер маленьких коробок, на пример:
Правильно ли понимаю структуру матрицы?
function getBoxIndex(x) {
var splittedString = x.split(',')
var parentBoxNum = parseInt(splittedString[0].split('.')[1])
var childBoxNum = parseInt(splittedString[1].split('.')[1])
return (parentBoxNum - 1) * 3 + childBoxNum
}
Собственно номер элемента складывается из: номер строки*3+номер столбца+1
let x = [
['op.1',['A','B','V']],
['op.2',['no4','no5','no6']],
['op.3',['no7','no8','no9']],
['op.4',['no10','WWWW','no12']],
['op.5',['no13','no14','no15']],
['op.6',['no16','no17','no18']],
['op.7',['no19','no20','no21']],
['op.8',['no22','no23','no24']],
['op.9',['no25','no26','no27']],
['op.10',['no28','no29','no30']],
];
function solution(x){
let s=2;
for(i=0;i<x.length;i++){
for (j=0; j<x[i][1].length; j++){
console.log(x[i][1][j]+" = "+(3*i+j+1));
}
}
}
Вывод (фрагмент)
A = 1
B = 2
V = 3
no4 = 4
no5 = 5
no6 = 6
no7 = 7
no8 = 8
no9 = 9
no10 = 10
WWWW = 11
Возможно стоит более четко описать задачу. Если вы обращаетесь к элементу
x[i][1][j]
то его номер по порядку = 3*i+j+1
, где 3 это размерность вложенного массива. Если вложенные массивы разной длины, то нужно последовательно суммировать их длины.
Это стандартная задача преобразования линейного массива в двумерный и обратно.
После дополнительных условий мы имеем на входе данные определенной структуры. Нужно вытащить из них числа. Расчет ведем по той же формуле.
var inbox="box.7,no.1";
var data=inbox.split(',');
var boxN=parseInt(data[0].split('.')[1]);
var itemN=parseInt(data[1].split('.')[1]);
var res=3*(boxN-1)+itemN;
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Если нажать на картинку, то она будет следовать за курсоромНо а как сделать так, чтобы при втором клике на картинку она бы уже отстала от курсора...
Есть огромный код Среди него нужно найти, когда (место в коде) значение одной из переменных-строк не станет равным "GV 7" из Visual Studio