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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 30, средняя оценка - 4.60
nikitasatcik
0 / 0 / 0
Регистрация: 08.01.2010
Сообщений: 2
#1

Найти скалярное и векторное произведение векторов - C++

08.01.2010, 22:29. Просмотров 4259. Ответов 2
Метки нет (Все метки)

Вот программка для операций над векторами, но почему-то не хочет работать, посмотрите плиз:

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
68
69
70
71
72
73
74
75
76
77
78
#include <stdio.h>
#include <iostream.h>
#include <math.h>
 
class TVector3D
{
private:
double x,y,z;
 
public:
TVector3D(double a,double b,double c):x(a),y(b),z(c) {}
TVector3D() {}
TVector3D() {}
TVector3D TVector3D::operator + (TVector3D &c) 
{
TVector3D t;
t.x = x + c.x;
t.y = y + c.y;
t.z = z + c.z;
return t;
}
TVector3D TVector3D::operator - (TVector3D &c) 
{
TVector3D t;
t.x = x + c.x;
t.y = y + c.y;
t.z = z + c.z;
return t;
}
double TVector3D::operator * (TVector3D &c) 
{
return x*c.x+y*c.y+z*c.z;
}
TVector3D TVector3D::operator / (TVector3D &c) 
{
TVector3D t;
t.x = y*c.z - z*c.y;
t.y = -(x*c.z-z*c.x);
t.z = z*c.y - y*c.x;
return t;
}
double abs();
void print();
double multi(TVector3D,TVector3D);
};
 
double TVector3D::multi(TVector3D b,TVector3D c)
{
double t;
t=x*b.x*c.z-x*b.z*c.y-y*b.x*c.z+y*b.z*c.x+z*b.x*c.y-z*b.y*c.x;
return t;
}
 
double TVector3D::abs()
{
return sqrt(x*x+y*y+z*z);
}
 
void TVector3D:rint()
{
printf("V=i*%lf+j*%lf+k*%lf \n",x,y,z);
}
 
void main()
{
double x,y,z;
cout<<"input vector a: "; cin>>x>>y>>z; TVector3D a(x,y,z);
cout<<"input vector b: "; cin>>x>>y>>z; TVector3D b(x,y,z);
cout<<"input vector c: "; cin>>x>>y>>z; TVector3D c(x,y,z);
TVector3D t;
t=a+b;
t.print();
printf("%lf \n",a*b);
t=a/b;
t.print();
printf("%lf \n",a.abs());
printf("%lf \n",a.multi(b,c));
return 0;}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2010, 22:29     Найти скалярное и векторное произведение векторов
Посмотрите здесь:
Как одновременно декларировать векторное и скалярное произведение векторов? C++
Найти скалярное произведение векторов C++
C++ Найти скалярное произведение векторов
C++ Найти скалярное произведение векторов
C++ Найти скалярное произведение двух n-мерных векторов
C++ Найти пару векторов из заданного набора имеющую минимальное скалярное произведение
C++ Векторное произведение векторов, в чем ошибка?
C++ Скалярное произведение векторов
Скалярное произведение векторов C++
C++ Распараллелить скалярное произведение векторов
[Геометрия]Скалярное произведение векторов C++
Скалярное произведение двух векторов C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
outoftime
║XLR8║
506 / 428 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
09.01.2010, 00:14     Найти скалярное и векторное произведение векторов #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nikitasatcik Посмотреть сообщение
void TVector3D:rint()
Цитата Сообщение от nikitasatcik Посмотреть сообщение
void print();
внимательней надо быть, и отформатируйте пожалуйста код
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
09.01.2010, 08:47     Найти скалярное и векторное произведение векторов #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Кроме того там же еще одно двоеточие. И уберите один конструктор по умолчанию.
Yandex
Объявления
09.01.2010, 08:47     Найти скалярное и векторное произведение векторов
Ответ Создать тему
Опции темы

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