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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с файлами http://www.cyberforum.ru/cpp-beginners/thread718355.html
Вообщем стоит две задачи: 1) с помощью функций fstream в текстовом документе заменить все символы табуляции на пробелы. 2) в бинарном файле посчитать частоты N - грамм (N > 2) Помогите пожалуйста новичку, буду очень признателен и благодарен!)
C++ Даны два массива. Напишите программу, которая находит такую последовательность элементов максимальной длины, которая содержится и в первом, и во вт Помогите написать программу.Даны два массива. Напишите программу, которая находит такую последовательность элементов максимальной длины, которая содержится и в первом, и во втором массивах. http://www.cyberforum.ru/cpp-beginners/thread718347.html
стандартные потоки C++
ОПРЕДЕЛИТЬ КЛАСС С ИМЕНЕМ TRAIN, содержащую следующие поля:  название пункта назначения;  НОМЕР ПОЕЗДА;  ВРЕМЯ ОТПРАВЛЕНИЯ;  ОПРЕДЕЛИТЬ методы доступа к этим ПОЛЕЙ И перегруженной операции извлечения и вставки для объектов типа TRAIN. #include "stdafx.h" #include <iostream> #include <vector> #include <algorithm>
Шаблоны классов. Обработка исключительных ситуаций C++
создать шаблон некоторого целевого класса А, возможно, реализован с применением некоторого серверного класса В. Это означает, что объект класса используется как элемент класса А. В качестве серверного класса может быть указан или класс, созданный программистом или класс из стандартной библиотеки - BinaryTree struct node { int key_value; node *left; node *right; }; class btree {
C++ Удаление элементов из массива http://www.cyberforum.ru/cpp-beginners/thread718334.html
Написал код, но запускается почему-то "через раз". Помогите, пожалуйста, найти ошибку! Задание: Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их первые вхождения. #include <iostream> #include <time.h> #include <conio.h> using namespace std; int main()
C++ Разработать функцию, которая считает среднее арифметическое и геометрическое массива чисел Я что-то набросала...но в любом случае куча ошибок и недочётов. Помогите с этим делом Буду очень благодарна #include<iostream> #include<math.h> using namespace std; float fun1(float *mas, int n) подробнее

Показать сообщение отдельно
Dracubin
Сообщений: n/a
04.12.2012, 00:38     Создать класс для работы с окружностями
Составить класс для работы с окружностями. В закрытую часть класса поместить информацию о четырех координатах вершин квадрата, в который вписана окружность.
Во внешней части задать и реализовать следующие функции:
Функцию инициализации окружности, принимающую в качестве агрументов координаты вершин квадрата, в который вписана окружность.
Функцию, определяющую, пересекается ли данная окружность с окружностю, координаты вершин квадрата, в который она вписана, переданы в качестве аргументов данной функции;
Функция вывода на печать информации об окружности.
В основной программе создать объект данного класса, инициализировать его, проверить его на пересечение с произвольной окружностью, вывести информацию об окружности на экран.
Примечание: две окружности пересекаются, если расстояние между их центрами меньше чем суммы радиусов обеих окружностей.

C++ (Qt)
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#include "stdafx.h"
#include <iostream.h>
#include <math.h>
#include <conio.h>
//using namespace std;
class Point
{
public:
    Point(int x_ = 0, int y_ = 0) : x(x_), y(y_) {}
    ~Point() {}
private:
    int x;
    int y;
};
 
class Circles : public Point
{
public:
    Circle(int x = 0, int y = 0, int R = 0) : Point(x, y), R(R) {}
    ~Circle() {}
private:
    int R;
};
 
class circle{
private:
    point A,B,C,D;
    double radius(point A, point O);
    point centre(point A, point B, point C, point D);
public:
    void intersection(circles O1, circles O2);
    void print(circles O);
    void input();
};
/*struct point 
{
    double x;
    double y;
}
struct circles
{
    point O;
    double r;
}*/
 
point circle::centre(point A, point B, point C, point D)
{
    point O;
    O.x = (A.x + B.x + C.x+ D.x)/4;
    O.y = (A.y + B.y + C.y+ D.y)/4;
    return O;
}
 
double circle::radius(point A, point O)
{
    return  sqrt(((A.x - O.x)*(A.x - O.x) + (A.y -O.y)*(A.y - O.y))/2);
}
 
void circle::intersection(circles O1, circles O2)
{
    double l= radius(O1.O,O2.O)*sprt(2);
    if ((abs(O1.r-O2.r)<=l) && (l<=(O1.r + O2.r)))
        cout<<"two circles intersect"<<endl;
    else 
        cout<<"two circles don't intersect"<<endl;
}
void circle::input()
{
    cout<<"point A: "<<endl;
    cin>>A.x;
    cin>>A.y;
    A={A.x,A.y};
    cout<<"point B: "<<endl;
    cin>>B.x;
    cin>>B.y;
    B={B.x,B.y};
    cout<<"point C: "<<endl;
    cin>>C.x;
    cin>>C.y;
    C={C.x,C.y};
    cout<<"point D: "<<endl;
    cin>>D.x;
    cin>>D.y;
    D={D.x,D.y};
 
}
 
void circle::print( circles O)
{
    cout<<"coordinates of the  circle's center: ("<<O.O.x<<",<<O.O.y<<")"<<endl;
    cout<<"radius of the circle: "<<O.r<<endl;
}
 
void main()
{
    cirles I1,I2;
    point O1,02;
    double r1,r2;
    circle vt;
    vt.input();
    O1= vt.centre();
    r1= vt.radius(A,O1);
    I1= {O1,r1};
    cout<<"enter the circle"<<endl;
    cin>>O2.x;
    cin>>O2.y;
    cin>>r2;
    I2={O2,r2};
    vt.print(I1);
    vt.intersection(I1,I2);
    getch();
}
Это первый раз я делаю класс и не понимаю как. Помогите мне, пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru