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

Умножение вектора на матрицу
  #602  
Старый 26.01.2009, 16:49
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
С нами: 9320830

Репутация: 86
По умолчанию Умножение вектора на матрицу

Умножение вектора на матрицу, код + пример
PHP код:
<?php

$vector 
= array ();
$matrix = array ();
$vector = array (123);
$matrix[0][0] = 1;
$matrix[0][1] = 0;
$matrix[0][2] = 0;
$matrix[1][0] = 0;
$matrix[1][1] = 1;
$matrix[1][2] = 0;
$matrix[2][0] = 2;
$matrix[2][1] = 0;
$matrix[2][2] = 2;

function 
multmatrix($v$m)
{
    
$output = array ();
    if (!
is_array ($v) || !is_array ($m))
    {
        return 
false;
    }
    if (
count ($m) != count ($v))
    {
        return 
false;
    }
    for ( 
$i 0$i count ($m); $i++)
    {
        
$cnt 0;
        for ( 
$j 0$j count ($m[$i]); $j++)
        {
            
$cnt++;
        }
        if (
$cnt != count ($v))
        {
            return 
false;
        }
    }
    for ( 
$i 0$i count ($m); $i++)
    {
        
$temp 0;
        for ( 
$j 0$j count ($m[$i]); $j++)
        {
            
$temp += ($v[$j] * $m[$j][$i]);
        }
        
$output[] = $temp;
    }
    return 
$output;
}

print_r (multmatrix($vector$matrix));

?>
 
Ответить с цитированием