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

Создать класс отрезков - C++

Восстановить пароль Регистрация
 
Lixord
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 21:07     Создать класс отрезков #1
прошу помощи с программой... может это и не так трудно, но я абсолютно не понимаю как это сделать... кто может помогите пожалуйста, и желательно подробнее...

задание:
Создать класс отрезков с данными-членами, являющимися концами отрезка, и функциями-членами нахождения длины отрезка, координаты его середины. Составить и использовать класс-наследник для отрезков длиной в два раза меньше, чем в базовом. Создать пример для демонстрации возможностей класса.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2013, 21:07     Создать класс отрезков
Посмотрите здесь:

C++ создать класс
C++ Создать класс
C++ Создать класс
создать класс C++
C++ Создать класс
Создать класс! C++
Создать класс C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gray_fox
What a waste!
 Аватар для gray_fox
1246 / 1129 / 54
Регистрация: 21.04.2012
Сообщений: 2,354
Завершенные тесты: 3
11.07.2013, 21:41     Создать класс отрезков #2
Цитата Сообщение от Lixord Посмотреть сообщение
Создать класс отрезков с данными-членами, являющимися концами отрезка, и функциями-членами нахождения длины отрезка, координаты его середины.
Так например:
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
#include <cmath>
 
 
struct point {
 
   point(double const x, double const y) : x(x), y(y) {}
 
   double const x;
   double const y;
};
 
struct line {
 
   line(point const& x, point const& y) : x(x), y(y) {}
 
   double length() const {
      return std::sqrt(std::pow(x.x - y.x, 2) + std::pow(x.y - y.y, 2));
   }
 
   point midpoint() const {
      return point(std::abs(x.x - y.x) / 2, std::abs(x.y - y.y) / 2);
   }
 
   point const x;
   point const y;
};
Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от Lixord Посмотреть сообщение
Составить и использовать класс-наследник для отрезков длиной в два раза меньше, чем в базовом.
жесть...)))

Lixord
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 21:48  [ТС]     Создать класс отрезков #3
спасибо) попробую теперь помучаться с последним...
Valentina
67 / 67 / 3
Регистрация: 13.05.2012
Сообщений: 130
11.07.2013, 21:51     Создать класс отрезков #4
без класса наследника
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
#include <iostream>
#include<cmath>
using namespace std;
 
class Line
{
protected:
    double x1,x2,y1,y2;
    int x3,y3;
public:
    Line() : x1(0),x2(0),y1(0),y2(0){}
    void vvod()
    {
        cout<<"Введите значения точки А(x,y): "<<endl;
        cin>>x1>>y1;
        cout<<"Введите значения точки B(x,y): "<<endl;
        cin>>x2>>y2;
    }
    void vyvod()
    {
        cout<<"Координаты точки А равны: ("<<x1<<","<<y1<<")"<<endl;
        cout<<"Координаты точки B равны: ("<<x2<<","<<y2<<")"<<endl;
    }
    int length()
    {
    int l=sqrt(pow((x1-x2),2)+pow((y1-y2),2));
    return l;
    }
    void kor()
    {
        int x3=abs(x1+x2)/2;
        int y3=abs(y1+y2)/2;
        cout<<"Координаты середины отрезка равны: ("<<x3<<","<<y3<<")"<<endl;
    }
};
 
 
int main ( )
{
    setlocale(LC_CTYPE,"rus");
    Line l;
    int dlina;
    l.vvod();
    l.vyvod();
    dlina=l.length();
    cout<<"Длина отрезка равна: "<<dlina<<endl;
    l.kor();
 
system("pause");
  return 0;
}
gray_fox
What a waste!
 Аватар для gray_fox
1246 / 1129 / 54
Регистрация: 21.04.2012
Сообщений: 2,354
Завершенные тесты: 3
11.07.2013, 21:55     Создать класс отрезков #5
Ошибся, поправил:
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
#include <cmath>
 
 
struct point {
 
   point(double const x, double const y) : x(x), y(y) {}
 
   double const x;
   double const y;
};
 
struct line {
 
   line(point const& x, point const& y) : x(x), y(y) {}
 
   double length() const {
      return std::sqrt(std::pow(x.x - y.x, 2) + std::pow(x.y - y.y, 2));
   }
 
   point midpoint() const {
      return point((x.x + y.x) / 2, (x.y + y.y) / 2);
   }
 
   point const x;
   point const y;
};
Lixord
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 21:59  [ТС]     Создать класс отрезков #6
всем спасибо огромное) буду пытаться сделать класс-наследник...
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,910
Записей в блоге: 1
11.07.2013, 22:55     Создать класс отрезков #7
не пытайся. Задание про "класс-наследник для отрезков длиной в два раза меньше, чем в базовом." - Б.Р.Е.Д.Я.Т.И.Н.А.
Lixord
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 23:02  [ТС]     Создать класс отрезков #8
эту бредятину дали на практике в универе... ничего так и не смог сделать...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2013, 23:09     Создать класс отрезков
Еще ссылки по теме:

Создать класс C++
C++ создать класс
Создать класс C++
создать класс C++
класс создать C++

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

Или воспользуйтесь поиском по форуму:
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,910
Записей в блоге: 1
11.07.2013, 23:09     Создать класс отрезков #9
Значит, это не универ, а церковно-приходская школа. Нас обманывают!
Yandex
Объявления
11.07.2013, 23:09     Создать класс отрезков
Ответ Создать тему
Опции темы

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