Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Задача о нахождении радиуса и центра круга - C++

30.01.2014, 17:07. Просмотров 339. Ответов 1
Метки нет (Все метки)

Кто-то случайно решал задачу о нахождении радиуса и центра круга, который проходит через 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
#include <iostream>
#include <vector>
#include <memory>
 
struct Point
{
    double x, y;
    Point(double _x = 0, double _y = 0) : x(_x), y(_y) {}
};
 
int main()
{
    std::vector< std::shared_ptr<Point> > vPoint;
 
    std::shared_ptr<Point> p1(new Point(4, 0));
    std::shared_ptr<Point> p2(new Point(-4, 0));
    std::shared_ptr<Point> p3(new Point(0, 4));
 
    //std::cout << p1->x << ' ' << p1->y << std::endl; 
    //std::cout << p2->x << ' ' << p2->y << std::endl; 
 
    double a = sqrt((p2->x - p1->x)*(p2->x - p1->x) + (p2->y - p1->y)*(p2->y - p1->y));
    double b = sqrt((p3->x - p1->x)*(p3->x - p1->x) + (p3->y - p1->y)*(p3->y - p1->y));
    double c = sqrt((p2->x - p3->x)*(p2->x - p3->x) + (p2->y - p3->y)*(p2->y - p3->y));
 
    std::cout << a << std::endl; 
    std::cout << b << std::endl; 
    std::cout << c << std::endl; 
 
    double p = (a + b + c)/2;
    double S = sqrt(p*(p - a)*(p - b)*(p - c));
 
    std::cout << p << std::endl; 
    std::cout << S << std::endl; 
 
    double R = a*b*c/(4*S);
 
    std::cout << R << std::endl; 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2014, 17:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача о нахождении радиуса и центра круга (C++):

Написать таблицу перевода радиуса в площадь круга для заданных значений радиуса - C++
написать таблицу перевода радиуса в площадь круга для значений радиуса от 1 до 18 В шагом 2.

Нахождение радиуса, диаметра и центра графа - C++
Помогите написать программу для нахождения радиуса, диаметра и центры графа :(

Определение площади и длины радиуса круга - C++
Помогитееее, срочно =) В первый ряд файла output.txt вывести площадь круга радиуса R. На второй строке вывести длину круга радиуса R. Тест...

Построить и вывести на экран окружность по координатам центра и радиуса - C++
суть в том что нужно построить и вывести на экран окружность по координатам центра и радиуса..для ввода координат и радиуса задать...

Найти длину окружности L и площадь круга S заданного радиуса R - C++
Найти длину окружности L и площадь круга S заданного радиуса R: L = 2·π·R, S = π·R2. В качестве значения π использовать 3.14. пока...

Найти длину окружности и площадь круга заданного радиуса R - C++
1 Найти длину окружности и площадь круга заданного радиуса R. В качестве значения Pi использовать 3.14. Вывести полученные значения. ...

1
Ko_Sergey
2 / 2 / 0
Регистрация: 17.01.2014
Сообщений: 28
30.01.2014, 17:12 #2
Найти координаты центра окружности по трём точкам
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2014, 17:12
Привет! Вот еще темы с ответами:

Найти длину окружности и площадь круга заданного радиуса R - C++
Помогите решить задачи. Найти длину окружности и площадь круга заданного радиуса R. В качестве значения Pi использовать 3.14. Вывести...

Определить, сколько значений функции находится внутри круга заданного радиуса - C++
Значения функции f(x)=sin(x)+cos(x) определены при х=х0(hx)xn . Определить, сколько значений функции f(x) принадлежит к окружности радиусом...

Во сколько раз площадь круга радиуса R больше площади сегмента, отсеченного хордой длины А? - C++
Определить, во сколько раз площадь круга радиуса R больше площади сегмента, отсеченного хордой длины А.

Выбрать все точки совокупности, лежащие вне круга заданного радиуса R с центром в заданной точке - C++
Дана совокупность N различных точек плоскости. Выбрать все точки совокупности, лежащие вне круга заданного радиуса R с центром в ...


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

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

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