Пусть описан тип R2Vector, представляющий векторна плоскости с вещественными координатами:
typedef struct { double x; double y; } R2Vector;
также описаны три переменные
u,
v и
w типа вектор и вещественная переменная
s:
R2Vector u, v, w; double s;
при этом известно, что переменные
u и
vсодержат два конкретныхвектора
единичной длины.Пусть в результате выполнения следующего фрагмента программызначение переменной
s приблизительно равно 0.7071,т.е. корню из двух, деленному пополам:
w.x = (-u.y); w.y = u.x; s = v.x * w.x + v.y * w.y; // s == 0.7071
На какой угол надо повернуть вектор
u,чтобы получить вектор
v?