Показать сообщение отдельно
  #1 (permalink)  
Старый 21.01.2013, 18:45
Кандидат Javascript-наук
Отправить личное сообщение для 12345678 Посмотреть профиль Найти все сообщения от 12345678
 
Регистрация: 03.09.2012
Сообщений: 109

Рекурсивный вызов функции
Дан код, естественно нерабочий:
function calculateNeighbors(i, j){
	var color = array[i][j].css('backgound-color');
	var ret = 0;
	if(i !== 0){
		if(array[i-1][j].css('background-color') === color){
				ret = ret + 1 + calculateNeighbors(i-1, j);
		}
	}
	if(i !== height/wh_block - 1){
		if(array[i+1][j].css('background-color') === color){
				ret = ret + 1 + calculateNeighbors(i+1, j);
		}
	}
	if(j !== 0){
		if(array[i][j-1].css('background-color') === color){
				ret = ret + 1 + calculateNeighbors(i, j-1);
		}
	}
	if(j !== width/wh_block - 1){
		if(array[i][j+1].css('background-color') === color){
				ret = ret + 1 + calculateNeighbors(i, j+1);
		}
	}
	return ret;
}


Функция работает на поле, разбитом на разноцветные клетки. Задача функции - подсчитать кол-во клеток, совпадающих с начальной по цвету. Буду очень благодарен за помощь.
Ответить с цитированием