Добрый день. Недавно начал изучать PHP. Занимаюсь программированием микроконтроллеров(умный дом, разработка устройств). Вот есть задание, реализовать класс двумерный вектор. Класс должен содержать атрибуты x и y - координаты вектора, а также публичные методы для сложения векторов, умножения вектора на число, вычитания векторов, вывода вектора на печать. Я не до конца понял суть задания. Может ктото сможет предположить или объяснить что нужно тут сделать? Я вот сто сделал: PHP: class Vector { private $x; private $y; function __construct($xx) { $this->x = $xx; } public function PrintVect() { for ($i = 0; $i < count($this->x);$i++) { for($j = 0; $j < count($this->x[$i]);$j++) { echo $this->x[$i][$j]; } echo "<br/>"; } } public function summ($yy) { $this->y = $yy; for ($i = 0; $i < count($this->x);$i++) { for($j = 0; $j < count($this->x[$i]);$j++) { echo $this->x[$i][$j]+$this->y[$i][$j]; } echo "<br/>"; } } public function odd() { } public function mul() { } } $a = array (array(4,5,6,7,8),array(15,16,17,18,19)); $b = array(array(5,5,6,6,6),array(10,15,10,15,15)); $MyVect1 = new Vector($a); $MyVect2 = new Vector($b); $MyVect1->PrintVect(); $MyVect2->PrintVect(); $MyVect1->summ($MeVect2); Как я понял вектор этот тотже массив. Нужно сделать операции над массивами через классы? Суммировать вектор с массивом $a получается. А вот как именно вектора суммировать (если именно так надо) я не могу понять? Помогите плиз разобраться с заданием....
Ну так просто вспомните из математики, что такое вектор. По ходу, здесь именно геометрическое понятие вектора имеется в виду, а не массив. И всё гораздо проще. --- Добавлено --- P.S. Где-то класс 8-9 вектора
Тот кто дал такое задание говорит ты делай как понимаешь , а мы проверим )) А я думал надо сделать аналогию вектора как в С++. Или чтото похожее как в PHP DSVector. Но вроде в математике нету двумерных векторов?... Придется вспоминать... Слово, двумерный, и надоумило с матрицами реализовывать...
@Miwutka, конечно есть двумерные. Вектор - это направленный отрезок. Если мы вводим систему координат на плоскости, он имеет два значения, т.е. двумерный. Если в пространстве, то трёхмерный, три значения. Вот накидал декартову систему, извиняй, что кривенько. И синим цветом изобразил вектор (1, 3) (т.е. 1 единицу вправо и 3 вверх от заданной точки) И погугли, там есть правила сложения векторов, умножения на число и т.п. Совершенно не сложные --- Добавлено --- Не пересложняйте задачу. Здесь не надо умный дом программировать Тут элементарнейший класс