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

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

Войти
Регистрация
Восстановить пароль
 
cafe
0 / 0 / 0
Регистрация: 28.10.2013
Сообщений: 2
#1

Создать класс Point для работы с точками на плоскости - C++

28.10.2013, 23:29. Просмотров 750. Ответов 2
Метки нет (Все метки)

Прошу помощи, только третья лаба по классам. Не совсем понимаю (может даже вообще) как это делать. Прошу указать и объяснить ошибки. И такой вопрос - можно ли как то связать "элементы" конструктора и экземпляра класса (то есть Point A,B и obj) ?. Пзик - готовый код не предлагать

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
79
80
81
82
83
84
85
# include <iostream>
 
using namespace std;
 
int Menu();
 
class Point
{
     double x,y;
public:
     void   Menu ()
     {
 
 
          cout<<"1. Peremeshenie po X\n";
          cout<<"2. Peremeshenie po Y\n";
          cout<<"3. Rostoyaniye do pochatku koordinat\n";
          cout<<"4. Rostoyaniye mezhdu dvoma tochkami\n";
          cout<<"5. Preobrazovaniye v polyarniye koordinatu\n";
          cout<<"6. Sravneniye\n";
          int varriant;
          cin>>varriant;
          switch(varriant)
               {
               case 1:
                     int v; cout<<"\n 1 - tochka A \n 2 - tochka B"<<endl;    
                     cin>>v;
                     switch(v)
                     {
                          case 1: Peremesheniye(Point A);               <<<<<<<<< error: expected primary-expression before 'A'
                          break;
                          case 2: Peremesheniye(Point B);               <<<<<<<<< error: expected primary-expression before 'B'
                          break;
                     }
                     break;
 
                    /*
               case 2:
 
               case 3:
 
               case 4:
 
               case 5:
 
               case 6:
               */
               }
 
     }
 
     void Peremesheniye()   // nabrosok
     {
          cout<<"\n 1 - po X \n 2 - po Y"<<endl; int v; 
          cin>>v;
          switch(v)
          {
          case 1:
          }
     }
 
/*
 
     Point(double _x = 0, double _y = 0)
     {
 
          x = _x; y = _y;
          cout<<"("<<x<<";"<<y<<")\n\n";
     }
*/
 
};
 
int main()
{
     Point obj;
     Point A(3,2);
     Point B(6,4);
     obj.Menu();
 
 
 
 
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2013, 23:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создать класс Point для работы с точками на плоскости (C++):

Создать класс Point для работы с точками на плоскости - C++
помогите пожалуйста,очень нужно. Создать класс Point для работы с точками на плоскости. Координаты точки – декартовы. • перемещение...

Создать класс Point для работы с точками на плоскости - C++
Задания должны быть реализованы двумя способами: - тип данных представляется структурой с необходимыми полями, а операции реализуются как...

Класс Point для работы с точками на плоскости - C++
Создать класс Point для работы с точками на плоскости. Координаты точки –декартовы. Обязательно должны быть реализованы: перемещение точки...

Разработать класс Point для представления точки на плоскости - C++
Разработать класс Point для представления точки на плоскости. Разработать класс, производный от класса Point. Создать гетерогенный массив...

ООП. Класс Angle для работы с углами на плоскости. - C++
Создать класс Angle для работы с углами на плоскости, задаваемыми величинами в градусах и минутах. Обязательно должны быть реализованы:...

Класс: создать класс Fraction для работы с дробными числами - C++
Необходимо создать класс Fraction для работы с дробными числами. Число должно быть представлено двумя полями: целая часть – длинное целое...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.10.2013, 01:23 #2
Меню, в классе Point, быть не должно. Координаты точки и методы для работы с координатами (установить, получить и т.д.).
MrGluck
Модератор
Эксперт CЭксперт С++
7209 / 4375 / 638
Регистрация: 29.11.2010
Сообщений: 11,887
29.10.2013, 01:30 #3
Ошибки:
- вынесите реализацию класса отдельно от его объявления. Идеально было бы создать отдельный модуль .h и .cpp, потом в main.cpp лишь подключить необходимый заголовочный файл и продемонстрировать работу.
- забудьте про транслит если хотите стать нормальным программистом. Учите английский. Или выставляйте нужную локаль. На эту тему тут.
- на фиг меню если того не требует ТЗ. Не за чем писать не по делу, тем более в классе точка
- лишние пустые строки надо убрать чтобы повысить читаемость кода
- ввод/вывод в функциях - моветон
- если метод не изменяет состояние объекта, он должен быть const
- методы обычно называют с маленькой буквы
Вообще следует все взять и переписать. Сначала продумайте интерфейс класса. Какими свойствами должна обладать сущность, какого её поведение. Советую выложить набросок на форум, дальше будет легче работать, как будто строить вокруг заложенного каркаса.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2013, 01:30
Привет! Вот еще темы с ответами:

Создать базовый класс - Array и производный класс - Money для работы денежной суммы - C++
ПОМОГИТЕ, ПОЖАЛУЙСТА, С ЗАДАЧЕЙ Создать базовый класс - Array и производный класс - Money для работы денежной суммы

Создать класс Point и производный класс ColoredPoint (цветная точка) - C++
Создайте класс Point (точка на плоскости), характеризующийся двумя координатами. Создайте производный класс ColoredPoint (цветная точка), в...

Создать класс Point и класс-наследник Line - C++
Создайте класс Point (точка), который содержит элементы целого типа xCoordinate и yCoordinate, и класс наследник Line, имеющий функции...

Создать функцию нахождения расстояния между двумя точками на плоскости - C++
на экзамене проблема с задачей создать функцию нахождения расстояния между двумя точками на плоскости struct point { double x,y; } ...


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

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

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