kb
simple_math объясните, пожалуйста, что такое матрицы. а то википедия матрицу определила как квадратный array, а array как матрицу (или я просто не понял). хочу понять что такое матрица чтоб понять, почему умножение двух матриц происходит именно таким образом.

(сейчас возможен неадекват: то есть при умножении матриц с размерностями m*n и n*l мы можем представить их как наборы m и l векторов в n-мерном пространстве, тогда результатом перемножения будет [здесь я долго пытался думать] матрица скалярных произведений этих векторов. и тут меня терзает мысль, почему же матрицы перемножаются (или представляются) именно таким образом, что в одной "измерением" служат строки, а в другой — столбцы? ведь умножение происходит именно так (скалярное произведение векторов берется именно так), почему не взять, к примеру, столбцы за измерения и перемножать в матрицах m*n и l*n просто два набора векторов (m и l) в n-мерном пространстве?)

спасибо.
kb
simple_math блин, почему дробь не назвали фракцией? (как по-английски, ну и в оригинале) ведь до смысла тогда докопаться легче.
kb
simple_math Понадобилось в программе понять, можно ли число представить как n * (n + 1) 2. Сначала придумалось решение "умножаем на два, берем квадратный корень, перемножаем числа левее и правее и смотрим, что получилось". Затем подумал, "да ну нафиг, это ж обычное квадратное уравнение, надо по общей формуле (-b+-sqrt(b^2-4*a*c))(2*a) сделать", а потом осознал, что сам по себе вывод этой формулы, по сути, извращает универсальное выражение a*x^2+b*x+c=0 так, чтоб получилось (x — foo)^2 = bar, оттуда и квадратный корень и два решения.. короче возникла аналогия с анекдотом о "вылить воду и свести задачу к решенной" и спорах о нужности фреймворков. Нет, таки первым способом сделаю.

p.s: тег *math больше засорять своей тупостью не буду