![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 17.07.2012
Сообщений: 4
|
![]()
есть программа :
#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(); } но нужно еще провести ОРТОГОНАЛИЗАЦИЮ ВЕКТОРОВ....... а я не знаю как это делается.......срочно нужна ваша помощь....пожалуйста. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]()
Этого никто не знает.
Точнее, никто не знает, что Вы подразумеваете под словом "ортогонализация". Напишите, что имеется на входе, что должно быть на выходе, и по какому алгоритму одно должно быть преобразовано в второе. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 17.07.2012
Сообщений: 4
|
![]()
у меня в задании просто указано:
1 шаг. Найти произведение длин векторов. Длина вектора находится по формуле (1); 2 шаг. Найти скалярное произведение векторов по формуле (2); 3 шаг. Разделить скалярное произведение на произведение длин векторов. Найдем косинус этого угла (формула(3)). 4 шаг. Найти угол (формула(4)). 5 шаг. Провести процесс ортогонализации векторов. Процесс ортогонализации Грамма - Шмидта........ Последний раз редактировалось Rossomaxa; 17.07.2012 в 21:38. |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]() |
![]() |
![]() |
![]() |
#5 |
Регистрация: 17.07.2012
Сообщений: 4
|
![]()
да блин видел я эту формулу......что не понимаете никак что НЕ ПОЛУЧАЕТСЯ У МЕНЯ ЕЕ ПРИМЕНИТЬ К ПРОГРАММЕ........кто бы если мог мне уже измененный правильный код выложить......дополненный........
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
Вы прикидываетесь идиотом или держите других форумчан за идиотов?
Что сложного в алгоритме: новый1 = старый 1 новый2 = старый2 - коэф*новый1, где коэф = скалярно(старый2, новый1)/скалярно(новый1, новый1) особо учитывая, что у вас есть код с комментариями? |
![]() |
![]() |
![]() |
#7 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
![]() Цитата:
Ортогонизация, это наверное преобразование пространства из рерпендикулярного, в перепендикулярное?
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вектор векторов | Freewill | Visual C++ | 6 | 19.02.2012 18:05 |
Перемножение векторов | Smile_Eminsa | Общие вопросы C/C++ | 0 | 11.05.2010 09:14 |
Массив из 2 векторов | GreatMuse | Общие вопросы C/C++ | 6 | 30.01.2010 22:09 |
Ввод векторов и матриц, умножение матрицы на вектор и вычисление скалярного призведения двух векторов | zverushka | Помощь студентам | 18 | 20.02.2009 15:25 |