Для нахождения проекции вектора $\vec{v}$ на подпространство $L$ и ортогональное дополнение $L^{\bot}$ можно выбрать базис пространства $V=L\oplus L^{\bot}$, затем его процессом ортогонализации Грама — Шмидта ортогонализовать, затем нормализовать и наконец записать вектор в этом базисе.

Другой путь представить вектор $v=v_{1}+v_{2},$ где $v_{1}\in L,v_{2}\in L^{\bot}$ расписав его через линейную оболочку и ортогональное дополнение.

Пусть $L=\left\langle a_{1},a_{2},a_{3}\right\rangle $. Сначала надо понять линейно–независимая ли система векторов $a_{1},a_{2},a_{3}$? Если они линейно–зависимы, то выбираем среди них линейно–независимые, например $L=\left\langle a_{1},a_{2},a_{3}\right\rangle =\left\langle a_{1},a_{2}\right\rangle $. Далее представляем наш вектор в виде $\vec{v}=\alpha_{1}a_{1}+\alpha_{2}a_{2}+v_{2}$.

Рассмотрим скалярное произведение: $$\left(a_{1},v\right)=\alpha_{1}\left(a_{1},a_{1}\right)+\alpha_{2}\left(a_{1},a_{2}\right)+\left(a_{1},v_{2}\right)=\alpha_{1}\left(a_{1},a_{1}\right)+\alpha_{2}\left(a_{1},a_{2}\right)+0,$$ тогда $$\left(a_{1},v\right)=\alpha_{1}a_{11}+\alpha_{2}a_{12}=b_{1}.$$ Аналогично для второго вектора: $$\left(a_{2},v\right)=\alpha_{1}a_{21}+\alpha_{2}a_{22}=b_{2}.$$

Решая уравнение

$$\left(\begin{array}{cc} a_{11} & a_{12}\\ a_{21} & a_{22} \end{array}\right)\left(\begin{array}{c} \alpha_{1}\\ \alpha_{2} \end{array}\right)=\left(\begin{array}{c} b_{1}\\ b_{2} \end{array}\right)$$

находим коэффициенты $\alpha_{1},\alpha_{2}$, строим проекцию $v=\alpha_{1}a_{1}+\alpha_{2}a_{2}$ и дополнение $v_{2}=v-v_{1}.$