Re: Шашки на js
ок.
У меня є 2мірний масив як зробити пошук елемента в ньому?
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → JavaScript, TypeScript, ECMAScript → Шашки на js
Для відправлення відповіді ви повинні увійти або зареєструватися
ок.
У меня є 2мірний масив як зробити пошук елемента в ньому?
FakiNyan написав:poperechnyi1 написав:https://jsfiddle.net/poperechnyi1/xdzu8xfq/
Зараз буду пробувати правила гри реалізувати.а HTML де? а цсс?
поставили завдання реалізувати без цього.
Просто на консолі. От думаю як це буде.
Графіка буде погана
ок.
У меня есть 2мерный массив как сделать поиск елемента в нем?
оце так нахабство
ок.
У меня есть 2мерный массив как сделать поиск елемента в нем?
шановний ви порушуєте порушуйте правило форуму 1.1, поважайте інших або підете в бан
poperechnyi1 написав:ок.
У меня есть 2мерный массив как сделать поиск елемента в нем?шановний ви порушуєте порушуйте правило форуму 1.1, поважайте інших або підете в бан
вибачте, я не хотів. Вже виправив.
ок.
У меня є 2мірний масив як зробити пошук елемента в ньому?
ну а дошку Ви як малювали?
цикл в циклі - по стовпцях і по рядках (або навпаки)
poperechnyi1 написав:ок.
У меня є 2мірний масив як зробити пошук елемента в ньому?ну а дошку Ви як малювали?
цикл в циклі - по стовпцях і по рядках (або навпаки)
В циклі
https://jsfiddle.net/poperechnyi1/xdzu8xfq/
Ал я нічого не малював бо графіка сказали не потрібна=|
ping написав:poperechnyi1 написав:ок.
У меня є 2мірний масив як зробити пошук елемента в ньому?ну а дошку Ви як малювали?
цикл в циклі - по стовпцях і по рядках (або навпаки)В циклі
https://jsfiddle.net/poperechnyi1/xdzu8xfq/
Ал я нічого не малював бо графіка сказали не потрібна=|
шукати в матриці можна простішим способо, вам не потрібно дві різні ф-ї, які роблять практично одне і те саме, як я бачу, та із вмістом "магічних" циферок. Вам всього лишень потрібно взяти вхідну матрицю, що є двовимірний масив
першим циклом пройтись по рядках, що є горизонталлю, і знайшовся відповідну комірку по горизонталі, знайти у вкладеному масиві, вже, за допомогою другого циклу, відповідну комірку по вертикалі
ось приклад
function findCell(board,h,v){
if(board.length<1)return null;
//нормадізація даних
//якщо вхідні запрошувані індекси менше нуля
if(h<1)h=0;
if(v<1)v=0;
//якщо вхідні запрошувані індекси поза межами матриці
//то робим ці індекси максимально можливими для цієї матриці
if(board.length-1<h)h=board.length-1;
if(board[0].length-1<v)v=board[0].length-1;
//пошук
var foundItem=null;
for(var i=0;i<=board.length;i++){
if(i==h){
for(var j=1;j<=board[i].length;j++){
if(j==v){
foundItem=board[i][j];
}
}
}
}
return foundItem;
}
console.log(findCell([[1,2,3],[4,5,6]],0,2));
щоб оновити елемент в матриці так це взагалі простіше всього, тут ніякого циклу не потрібно
function updateBoardCell(board,newValue,h,v){
if(('undefined'!==typeof board[h])&&
('undefined'!==typeof board[h][v])){
board[h][v]=newValue;
}
}
пропоную скачати http://html-canvas-lib.sourceforge.net/
разом з кодом там є приклад дошки на канвасі --
трошки докрутити -- і вперед в продакшн гратись з друзями))
той же приклад онлайн
http://html-canvas-lib.sourceforge.net/#examples
http://html-canvas-lib.sourceforge.net/ … -grid.html
imho бібліотека хороша -- звичайно не така мудрьона як LibCanvas, не ооп а чисто-функціональна і проста як палець))
Для відправлення відповіді ви повинні увійти або зареєструватися