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

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

11.07.2013, 21:07. Просмотров 876. Ответов 8
Метки нет (Все метки)

прошу помощи с программой... может это и не так трудно, но я абсолютно не понимаю как это сделать... кто может помогите пожалуйста, и желательно подробнее...

задание:
Создать класс отрезков с данными-членами, являющимися концами отрезка, и функциями-членами нахождения длины отрезка, координаты его середины. Составить и использовать класс-наследник для отрезков длиной в два раза меньше, чем в базовом. Создать пример для демонстрации возможностей класса.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.07.2013, 21:07
Ответы с готовыми решениями:

Создать класс Man (человек), с полями: имя, возраст, пол и вес. Создать производный класс Student ...
Создать класс Man (человек), с полями: имя, возраст, пол и вес. Определить методы задания имени,...

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать...

Создать класс - данные - абстрактный базовый класс. Создать производные классы
Всем привет! У меня вот такая проблема.... Создать класс - данные - абстрактный базовый класс....

Создайте класс отрезков на координатной плоскости, с необходимыми свойствами c понятными именами и правильными типами
Создайте класс отрезков на координатной плоскости, описав в нем все необходимые свойства, подобрав...

8
What a waste!
1579 / 1279 / 172
Регистрация: 21.04.2012
Сообщений: 2,683
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 Посмотреть сообщение
Составить и использовать класс-наследник для отрезков длиной в два раза меньше, чем в базовом.
жесть...)))

1
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 21:48  [ТС] 3
спасибо) попробую теперь помучаться с последним...
0
70 / 70 / 13
Регистрация: 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;
}
1
What a waste!
1579 / 1279 / 172
Регистрация: 21.04.2012
Сообщений: 2,683
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;
};
1
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 21:59  [ТС] 6
всем спасибо огромное) буду пытаться сделать класс-наследник...
0
3300 / 2681 / 724
Регистрация: 25.03.2012
Сообщений: 9,683
Записей в блоге: 1
11.07.2013, 22:55 7
не пытайся. Задание про "класс-наследник для отрезков длиной в два раза меньше, чем в базовом." - Б.Р.Е.Д.Я.Т.И.Н.А.
1
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 8
11.07.2013, 23:02  [ТС] 8
эту бредятину дали на практике в универе... ничего так и не смог сделать...
0
3300 / 2681 / 724
Регистрация: 25.03.2012
Сообщений: 9,683
Записей в блоге: 1
11.07.2013, 23:09 9
Значит, это не универ, а церковно-приходская школа. Нас обманывают!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.07.2013, 23:09

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий класс колесо
Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий...

Создать класс комната, имеющая площадь. Создать класс однокомнатных квартир, двухкомнатных и т.д
Создать класс комната, имеющая площадь. Создать класс однокомнатных квартир, двухкомнатных и т.д....

Создать абстрактный класс «Товар», на его основе создать класс «Автомобиль»
Вечер добрый, а может и не добрый. В изучении C# столкнулся с такой проблемой - как исключения. ...

Создать класс Point, на его основе создать класс Line
Здравствуйте, есть такая часть задачки: &quot;Создать класс Point, на его основе создать класс Line....


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

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

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