Форум программистов, компьютерный форум CyberForum.ru

Ортогонализация векторов - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Rossomaxa
0 / 0 / 0
Регистрация: 17.07.2012
Сообщений: 3
17.07.2012, 12:07     Ортогонализация векторов #1
есть программа :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <conio.h>
#include <iostream>
#include<math.h>
using namespace std;
class Vector{
float x;
float y;
float z; //координаты вектора
float t;
float s;
public:
Vector(float x1,float x2,float x3,float x4,float x5) //конструктор
{x=x1;y=x2;z=x3;t=x4;s=x5;}
Vector add(Vector S) //вычисление суммы векторов
{x+=S.x;
y+=S.y;
z+=S.z;
t+=S.t;
s+=S.s;
Vector Q(x,y,z,t,s);
return Q;}
Vector sub(Vector S) //разность векторов
{x-=S.x;
y-=S.y;
z-=S.z;
t-=S.t;
s-=S.s;
Vector Q(x,y,z,t,s);
return Q;}
float scalar(Vector S) //скалярное произведение векторов
{float temp;
temp=x*S.x+y*S.y+z*S.z+t*S.t+s*S.s;
return temp;}
Vector mult(float temp) //умонжение вектора на число
{x*=temp;
y*=temp;
z*=temp;
t*=temp;
s*=temp;
Vector Q(x,y,z,t,s);
return Q;}
float length() //длина вектора
{float temp;
temp=sqrt(x*x+y*y+z*z+t*t+s*s);
return temp;}
float angle(Vector S) //угол между векторами
{float ang;
ang=acos(scalar(S)/length()/S.length());
return ang;}
};
void main()
{float X1,X2,X3,X4,X5,lambda;
cout<<"Vvedite 5 koordinat vektora a:"<<endl;
cin>>X1>>X2>>X3>>X4>>X5;
Vector A(X1,X2,X3,X4,X5);
cout<<"Vvedite 5 koordinat vektora b: "<<endl;
cin>>X1>>X2>>X3>>X4>>X5;
Vector B(X1,X2,X3,X4,X5);
cout<<"Vvedite 4islo Lambda: ";
cin>>lambda;
Vector M(0,0,0,0,0);
M=A.mult(lambda); M.add(B.mult(1-lambda));
Vector N(0,0,0,0,0);
N=A.mult(1/lambda); N.sub(B.mult(1/(1+lambda)));
cout<<"Ugol mezdu vektorami (lambda*a+(1-lambda)*b) i (a/lambda-b/(1+lambda)) : "<<M.angle(N)<<endl;
_getch();
}
но нужно еще провести ОРТОГОНАЛИЗАЦИЮ ВЕКТОРОВ....... а я не знаю как это делается.......срочно нужна ваша помощь....пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.07.2012, 12:07     Ортогонализация векторов
Посмотрите здесь:

C++ сложение векторов
Сложение векторов C++
C++ Преобразование векторов
C++ Вектор векторов
C++ Сравнение векторов
C++ объединение векторов
C++ Массив векторов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
17.07.2012, 13:08     Ортогонализация векторов #2
Цитата Сообщение от Rossomaxa Посмотреть сообщение
я не знаю как это делаетс
http://ru.wikipedia.org/wiki/Процесс_Грама_―_Шмидта
Rossomaxa
0 / 0 / 0
Регистрация: 17.07.2012
Сообщений: 3
17.07.2012, 17:31  [ТС]     Ортогонализация векторов #3
извините, но это я уже видел в википедии и рассматривал данный процесс.....но я не смог "переместить" его в свою программу......ничего не выходит......никто не мог бы дать уже готовый измененный правильный дополненный вариант программы?

Добавлено через 24 секунды
очень нужно........дело жизни и смерти...
Yandex
Объявления
17.07.2012, 17:31     Ортогонализация векторов
Ответ Создать тему
Опции темы

Текущее время: 09:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru