Показать сообщение отдельно

  #23  
Старый 09.01.2008, 12:34
Macro
Постоянный
Регистрация: 11.11.2006
Сообщений: 595
Провел на форуме:
1845062

Репутация: 1079


По умолчанию

Код:
function det(a, n){
	if(n == 1) return a[0][0];
	var a1 = [[],[],[],[],[]], a2 = [[],[],[],[],[]];
	
	var res = 0, i, j, k, l;
	for(i = 0; i < n; i++) for(j = 0; j < n; j++) {a1[i][j] = a[i][j];}
	
	for(i = 0; i < n; i++){
		if(a1[0][i]){
			for(j = 1; j < n; j++) for(k = 0, l = 0; k < n; k++) if(k != i) a2[j-1][l++] = a1[j][k];
			res += ((i % 2) ? 1 : -1) * a1[0][i] * det(a2, n-1);
		}
	}
	return res;
}
Вот этим кодом мозг поломаешь Это функция вычисления оценки
 
Ответить с цитированием