Помощь - Поиск - Пользователи - Календарь
Полная версия: Проверить ортогональность векторного произведения.
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
KerK
Помогите пожалуйста разобраться с задачей... Что-то я не пойму, что тут делать нужно.

Для заданной матрицы 3х3 получить 3 вектора. Пару векторов перемножить векторно и проверить ортогональность векторного произведения одного из сомножителей.
Матрица:
-2, 2, -2,
3, 0, 0
0, -1, 1
мисс_граффити
и на каком из этапов возникает проблема?
KerK
Цитата(мисс_граффити @ 16.11.2006 22:46) *

и на каком из этапов возникает проблема?

Непонятно, откуда получить 3 вектора, и какие 2 вектора надо перемножить? ВОбщем реализация задачи меня не пугает, я просто смысла не могу понять.... что делать то нужно ))
KerK
спасибо за помощь... разобрался сам.... правда можно спать уже не ложиться nea.gif


program prg2;
uses crt;
type
      A = array [1..3,1..3] of integer;
const
      t:a=((-2,2,-2),(3,0,0),(0,-1,1));
var
     i,j,e,k:integer;
     pr,z,n,summa:integer;

begin
clrscr;
n:=3;
z:=0;
 for i:=1 to n-1 do
 for e:=i+1 to n do
 begin
   pr:=0;
   summa:=0;
   for j:=1 to n-1 do
   for k:=j+1 to n do
   begin
     z:=z+1;
     pr:=t[i,z]*(t[i,j]*t[e,k]-t[e,j]*t[i,k]);
     summa:=summa+pr;
   end;
   if (pr=0) then
   begin
     writeln('Вектор произведения:');
     for z:=1 to n do write(t[i,z]:2);
     writeln;
     for z:=1 to n do write(t[e,z]:2);
     writeln('  ортогонален');
   end
   else begin
     writeln('Вектор произведения:');
     for z:=1 to n do write(t[i,z]:2);
     writeln;
     for z:=1 to n do write(t[e,z]:2);
     writeln('  не ортогонален');
   end;
 end;
 readln;
end.

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.