Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Arista
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 7
#1

Найти косинус между векторами

15.01.2013, 10:08. Просмотров 921. Ответов 2
Метки нет (Все метки)

дана размерность пространства
н, даны два вектора в нем, найти
косинус угла между ними

что такое размерность и как ее задать и какая библиотеку подключает вычисление корней, стандартная math не работает...
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2013, 10:08
Ответы с готовыми решениями:

Косинус угла между векторами
Косинус угла между векторами

Определите косинус между векторами
Сказали делать в Turbo C Даны координаты четырех точек в заданном порядке....

Косинус угла между векторами
Помогите! Есть метод класса Anqle //считает величину косинуса угла между...

Найти угол между векторами
У меня есть координаты конца вектора. Я вроде норм нахожу долготу вектора, но...

Найти угол, выраженный в радианах и градусах между векторами A(xa, ya) и B(xb, yb)
Найти угол, выраженный в радианах и градусах между векторами A(xa, ya) и B(xb,...

2
vxg
Модератор
3236 / 2040 / 319
Регистрация: 13.01.2012
Сообщений: 7,898
15.01.2013, 10:55 #2
Лучший ответ Сообщение было отмечено Arista как решение

Решение

что такое размерность - простите не стану отвечать. откройте математику наверное.
в простейшем случае задаем вектора в виде массивов содержащих n элементов
C++
1
2
3
4
5
6
7
8
9
10
11
int n = 3;
 
double *v1 = new double[n];
v1[0] = 1;
v1[1] = 20;
v1[2] = 40;
 
double *v2 = new double[n];
v2[0] = 1;
v2[1] = 20;
v2[2] = 40;
косинус угла между векторами равен их скалярному произведению

C++
1
2
3
double cosine = 0;
for (int i = 0; i < n; i++)
    cosine += v1[i] * v2[i];
вычисление корней производится функцией sqrt из math.h
0
Igor3D
1227 / 594 / 74
Регистрация: 01.10.2012
Сообщений: 2,844
15.01.2013, 11:09 #3
Цитата Сообщение от vxg Посмотреть сообщение
косинус угла между векторами равен их скалярному произведению
Ну все-таки произведению нормированных векторов
C++
1
2
3
4
5
6
7
double cosine = 0.0, sum1 = 0.0, sum2 = 0.0;
for (int i = 0; i < n; i++) {
    cosine += v1[i] * v2[i];
    sum1 += v1[i] * v1[i];
    sum2 += v2[i] * v2[i];
}
cosine /= sqrt(sum1) * sqrt(sum2);
Да, а вопросы конечно впечатляют
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.01.2013, 11:09

Класс вектор на основе класса Complex. Найти угол между векторами
класс вектор на основе класса комплекс найти кут между векторами...

Ограничение градуса между векторами
Как сделать так чтобы градус между нормализованным и не нормализованным...

Угол между векторами со знаком в 2D!
Привет! :) См. картинку. Есть 2д декартово пространство. 1. Задан вектор...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru