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

Поправить описание класса для объектов-векторов, задаваемых координатами концов в двухмерном пространстве - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Zero1
1 / 1 / 0
Регистрация: 24.04.2012
Сообщений: 16
26.05.2012, 21:30     Поправить описание класса для объектов-векторов, задаваемых координатами концов в двухмерном пространстве #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
#include <iostream>
#include <math.h>
#include <conio.h>
#include <iomanip>
using namespace std;
struct koord{double x,y};
class vektors{
    double x1,y1,x2,y2;
public: void sl(double x1, double y1, double x2,double y2);
        void vich(double x1, double y1, double x2,double y2);
        void proiz(double x1, double y1, double x2,double y2);
        void dlin(double x1, double y1, double x2,double y2);
        void cosin(double x1, double y1, double x2,double y2);
};
void vektors::sl(double x1, double y1, double x2,double y2,)
{double x, y, ;
x=x1+x2;
y=y1+y2;
cout<<"Результат сложения: С("<<x<<","<<y<<",)\n";};
void vektors::vich(double x1, double y1, double x2,double y2,)
{double x,y,;
x=x1-x2;
y=y1-y2;
cout<<"Результат вычитания: С("<<x<<","<<y<<",")\n";};
void vektors::proiz(double x1, double y1, double x2,double y2,)
{double ps,pvx,pvy,;
ps=x1*x2+y1*y2+;
cout<<"Скалярное произведение="<<ps<<'\n';
pvx=y1*x2-x1*y2;
pvy=x1*y2-y1*x2;
cout<<"Векторное произведение: С("<<pvx<<","<<pvy<<",)\n";
};
void vektors::dlin(double x1, double y1, double x2,double y2,)
{double dla,dlb;
dla=sqrt(pow(x1,2)+pow(y1,2)+pow(z1,2));
dlb=sqrt(pow(x2,2)+pow(y2,2)+pow(z2,2));
cout<<"Длина вектора А="<<setprecision(4)<<dla<<'\n';
cout<<"Длина вектора B="<<setprecision(4)<<dlb<<'\n';
};
void vektors::cosin(double x1, double y1, double x2,double y2,)
{double c,u;
c=(x1*x2+y1*y2)/(sqrt(pow(x1,2)+pow(y2,2)*sqrt(pow(x2,2)+pow(y2,2))));
u=acos(c);
cout<<"Cos a="<<setprecision(5)<<c<<'\n';
};
int main()
{setlocale(LC_ALL, "Russian");
    koord v,v1;
    cout<<"Координаты A: \nx ";
    cin>>v.x;
    cout<<"y "; cin>>v.y;
cout<<"\nКоординаты B: \nx ";
cin>>v1.x;
cout<<"y ";
cin>>v1.y;
cout<<'\n';
vektors perem;
perem.sl(v.x,v.y,v1.x,v1.y,);
perem.vich(v.x,v.y,v1.x,v1.y,);
perem.dlin(v.x,v.y,v1.x,v1.y,);
perem.cosin(v.x,v.y,v1.x,v1.y,);
perem.proiz(v.x,v.y,v1.x,v1.y,);
getch();
return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2012, 21:30     Поправить описание класса для объектов-векторов, задаваемых координатами концов в двухмерном пространстве
Посмотрите здесь:

Составить описание класса для объектов-векторов C++
C++ Составить описание класса для объектов-векторов, задаваемых координатами концов в трехмерном пространстве
C++ Составить описание класса для представления комплексных чисел
Создайте стуктуру Point (точка) с вещественными полями x и y, которые задают координаты этой точки в двухмерном пространстве C++
C++ Найти в n-мерном пространстве min расстояние от начала координат до отрезка, заданного координатами концов
Составить описания класса для векторов задаваемые координатами концов в трёхмерном пространстве C++
C++ Составить формулу длины отрезка в двухмерном пространстве
Составить описание класса для представления комплексных чисел C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4925 / 2668 / 243
Регистрация: 29.11.2010
Сообщений: 7,421
27.05.2012, 04:03     Поправить описание класса для объектов-векторов, задаваемых координатами концов в двухмерном пространстве #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
#include <iostream>
 #include <math.h>
 #include <conio.h>
 #include <iomanip>
 using namespace std;
 struct koord{double x,y}; // надо struct koord{double x,y;};
 class vektors{
 double x1,y1,x2,y2;
 public: void sl(double x1, double y1, double x2,double y2);
 void vich(double x1, double y1, double x2,double y2);
 void proiz(double x1, double y1, double x2,double y2);
 void dlin(double x1, double y1, double x2,double y2);
 void cosin(double x1, double y1, double x2,double y2);
 };
 void vektors::sl(double x1, double y1, double x2,double y2,) // надо убрать запятую вконце
 {double x, y, ;
 x=x1+x2;
 y=y1+y2;
 cout<<"Результат сложения: С("<<x<<","<<y<<",)\n";};
 void vektors::vich(double x1, double y1, double x2,double y2,) // и тут
 {double x,y,;
 x=x1-x2;
 y=y1-y2;
 cout<<"Результат вычитания: С("<<x<<","<<y<<",")\n";}; // тут убрать предпоследнюю кавычку, точку с запятой
 void vektors:roiz(double x1, double y1, double x2,double y2,) // и тут убрать зпт, правильно написать оператор доступа (::), переименовать функцию в proiz
 {double ps,pvx,pvy,; // тут убрать зпт
 ps=x1*x2+y1*y2+; // тут убрать последний +
 cout<<"Скалярное произведение="<<ps<<'\n'; // \n надо писать в " "
 pvx=y1*x2-x1*y2;
 pvy=x1*y2-y1*x2;
 cout<<"Векторное произведение: С("<<pvx<<","<<pvy<<",)\n";
 };
 void vektors::dlin(double x1, double y1, double x2,double y2,)
 {double dla,dlb;
 dla=sqrt(pow(x1,2)+pow(y1,2)+pow(z1,2)); // тут берется какой-то z1
 dlb=sqrt(pow(x2,2)+pow(y2,2)+pow(z2,2)); // а тут какой-то z2 
 cout<<"Длина вектора А="<<setprecision(4)<<dla<<'\n';
 cout<<"Длина вектора B="<<setprecision(4)<<dlb<<'\n';
 };
 void vektors::cosin(double x1, double y1, double x2,double y2,)
 {double c,u;
 c=(x1*x2+y1*y2)/(sqrt(pow(x1,2)+pow(y2,2)*sqrt(pow(x2,2)+pow(y2,2))));
 u=acos(c);
 cout<<"Cos a="<<setprecision(5)<<c<<'\n';
 };
 int main()
 {setlocale(LC_ALL, "Russian");
 koord v,v1;
 cout<<"Координаты A: \nx ";
 cin>>v.x;
 cout<<"y "; cin>>v.y;
 cout<<"\nКоординаты B: \nx ";
 cin>>v1.x;
 cout<<"y ";
 cin>>v1.y;
 cout<<'\n';
 vektors perem;
 perem.sl(v.x,v.y,v1.x,v1.y,); // тут везде убрать , в конце
 perem.vich(v.x,v.y,v1.x,v1.y,); // тут 
 perem.dlin(v.x,v.y,v1.x,v1.y,); // тут
 perem.cosin(v.x,v.y,v1.x,v1.y,); // тут
 perem.proiz(v.x,v.y,v1.x,v1.y,); // тут
 getch();
 return 0;
 }
И ура, оно компилируется
Yandex
Объявления
27.05.2012, 04:03     Поправить описание класса для объектов-векторов, задаваемых координатами концов в двухмерном пространстве
Ответ Создать тему
Опции темы

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