Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Vovanich13
1 / 1 / 0
Регистрация: 27.01.2014
Сообщений: 91
#1

Нужно удалить класс Rectangle1 дружественный к классу Rectangle - C++

21.10.2014, 15:08. Просмотров 336. Ответов 3
Метки нет (Все метки)

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>
using namespace std;
 
struct Coords{
float x;
float y;
};
class rectangle1;
class rectangle{
public:
rectangle(){
cout << "Vvedit coordinati A: ";
cin>> A.x >> A.y;
cout << "Vvedit coordinati B: ";
cin>> B.x >> B.y;
cout << "Vvedit coordinati C: ";
cin>> C.x >> C.y;
cout << "Vvedit coordinati D: ";
cin>> D.x >> D.y;
}
class rectangle1;
float Diagonal(rectangle& rc);
float DowgOtr(const Coords& pt1, const Coords& pt2)
{
return sqrt(pow((pt2.x - pt1.x), 2) + pow((pt2.y - pt1.y), 2));
}
public:
Coords A, B, C, D;
};
class rectangle1{
public:
float perimetr( rectangle& rc);
float ploscha( rectangle& rc);
};
float rectangle1:: perimetr(rectangle& rc)
{
float prmtr;
prmtr = rc.DowgOtr(rc.A, rc.B) + rc.DowgOtr(rc.B, rc.C)
+ rc.DowgOtr(rc.C, rc.D) + rc.DowgOtr(rc.D, rc.A);
return prmtr;
 
}
float rectangle1:: ploscha(rectangle& rc)
{
float square;
square = rc.DowgOtr(rc.A, rc.B) * rc.DowgOtr(rc.B, rc.C);
return square;
}
float Diagonal(rectangle& rc)
{
return rc.DowgOtr(rc.A, rc.C);
}
int main()
{
rectangle rc;
rectangle1 friendrc;
 
cout << friendrc.perimetr(rc) << endl
<<friendrc.ploscha(rc) << endl
<< Diagonal(rc);
getch();
return 0;
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2014, 15:08
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Нужно удалить класс Rectangle1 дружественный к классу Rectangle (C++):

Класс Rectangle совпадает с функцией Rectangle
Пишу свой класс Rectangle, который при отрисовки использует функцию Rectangle...

дружественный класс
доброго дня. есть вопрос. на картинке видно что шаблон называется class map....

Дружественный класс
#include &lt;iostream&gt; class X { friend class Y; int a; int b; int y;...

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени?
На самом деле ничё фантастического я не прошу, ведь: template &lt;class T&gt; class...

Дружественный шаблонный класс
Доброго времени суток. Есть пример из книги (создание списка). Вот код:...

Дружественный класс (код внутри)
вот я не знаю как сделать из этого дружественный класс, все тоже самое только с...

3
nmcf
6246 / 5558 / 2528
Регистрация: 14.04.2014
Сообщений: 23,369
21.10.2014, 15:11 #2
По-русски.
0
Vovanich13
1 / 1 / 0
Регистрация: 27.01.2014
Сообщений: 91
21.10.2014, 15:17  [ТС] #3
Добавлено через 1 минуту
nmcf, надо удалить класс rectangle1 дружественный класса rectangle
0
zss
Модератор
Эксперт С++
6959 / 6521 / 4139
Регистрация: 18.12.2011
Сообщений: 17,209
Завершенные тесты: 1
21.10.2014, 15:42 #4
Лучший ответ Сообщение было отмечено Vovanich13 как решение

Решение

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
#include <iostream>
#include <cmath>
using namespace std;
 
struct Coords
{
  float x;
  float y;
  Coords(float _x,float _y):x(_x),y(_y){}
};
float DowgOtr(const Coords& pt1, const Coords& pt2)
{
return sqrt((pt2.x - pt1.x)*(pt2.x - pt1.x) + (pt2.y - pt1.y)*(pt2.y - pt1.y));
}
//-------------------------------------------------------------------------------------------
class rectangle
{
private:
   Coords A, B, C, D;
public:
    rectangle():A(0,0),B(0,0),C(0,0),D(0,0){}
void Input()
{
   cout << "Vvedit coordinati A: ";
   cin>> A.x >> A.y;
   cout << "Vvedit coordinati B: ";
   cin>> B.x >> B.y;
   cout << "Vvedit coordinati C: ";
   cin>> C.x >> C.y;
   cout << "Vvedit coordinati D: ";
   cin>> D.x >> D.y;
}
float Diagonal();
float perimetr();
float ploscha();
};
//-------------------------------------------------------------------------------------------
float rectangle::perimetr()
{
float prmtr = DowgOtr(A,B) + DowgOtr(B,C)
+ DowgOtr(C,D) + DowgOtr(D,A);
return prmtr;
 
}
float rectangle:: ploscha()
{
float square = DowgOtr(A, B) * DowgOtr(B, C);
return square;
}
float rectangle::Diagonal()
{
return DowgOtr(A, C);
}
//-------------------------------------------------------------------------------------------
int main()
{
  rectangle rc;
  rc.Input();
  cout << rc.perimetr() << endl
  <<rc.ploscha() << endl
  << rc.Diagonal();
  system("pause");
  return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2014, 15:42
Привет! Вот еще темы с решениями:

Дружественный класс или функция
Есть 2 класса. Допустим: класс 1: Товар класс 2:Клиент В товаре есть приват...

Произвольный дружественный шаблонный класс
Добрый день. Не могу понять, как объявить дружественный шаблонный класс. Имеем...

Передача параметра в дружественный класс
Не получается передать значение в дружественный класс #include &lt;iostream&gt; ...

Создать класс Rectangle
Создать класс Rectangle, разработав следующие элементы класса: а. Поля: ...


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

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

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