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

Класс "окружность" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Матрицы: сложения двух матриц (двумерных массивов) http://www.cyberforum.ru/cpp-beginners/thread604506.html
Необходимо написать программу сложения двух матриц (двумерных массивов) на языке СИ++. Даны матрицы A и B. Надо их объявить и заполнить случайным образом через random, распечатать, получить матрицу...
C++ Множества Дан текст на английском языке, который заканчивается точкой. В тексте удалить все гласные буквы, а согласные заменить на прописные. http://www.cyberforum.ru/cpp-beginners/thread604502.html
C++ Текстовые файлы
Дан файл, содержащий текст на русском языке. Выбрать из него те символы, которые встречаются в нем только один раз, в том порядке, в котором они встречаются в тексте.
C++ куда воткнуть файл res?
есть файл res и его надо как-то подключить . куда его положить? в папку проекта? в документации написано в "стандартная библиотека (папка) С++ Visual Studio/VC98/ Projects" но у меня нет папки...
C++ Visual Studio 6.0 вылетает с ошибкой http://www.cyberforum.ru/cpp-beginners/thread604492.html
Хочу добавить в проект файл. перехожу во вкладку где список файлов слева. контекстное меню-> add file и студия вылетает с ошибкой памяти чтото там. пробовал в только что созданом пустом проекте -...
C++ Чтение из excel Суть вопроса в слудеющем. Есть Excel файл с несколькими таблицами. Из него берутся данные. Как сделать чтение данных, если заранее не извество, сколько строк в каждой таблице? Можно ли как-то... подробнее

Показать сообщение отдельно
Hrundel
26 / 26 / 2
Регистрация: 27.05.2012
Сообщений: 114
14.06.2012, 18:08
Уравнение

x^2 + y^2 + ax + by + c = 0

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

Чтобы ответить на вопрос, какой именно случай имеет место для данного конкретного уравнения, надо выделить полные квадраты по x и y.

например, уравнение x^2 + y^2 - 4x + 2y = 0 можно преобразовать так:

(x^2 - 4x + 4) + ( y^2 + 2y + 1) - 5 = 0

(x - 2)^2 + (y + 1)^2 = 5.

Значит получаем что-то типа:

(x - a)^2 + (y + b)^2 = с^2.

a и b центр окружности a = x координата b = y координата
с^2 = радиус окружности в квадрате.

x, y координаты точки лежащей на окружности.

C++
1
2
3
4
float xPoint, yPoint, xCenter, yCenter, radius;
 
radius = (xPoint - xCenter)*(xPoint - xCenter) + (yPoint + yCenter)*(yPoint + yCenter);
radius = sqrt(radius);
Добавлено через 17 часов 21 минуту
Это просто набросок. Но все же лучше, чем вообще ничего! (:

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
#include <math.h>
 
class Cycle {
 
private: 
        float xPoint, yPoint, xCenter, yCenter, radius;
 
public:
 
    Cycle()
        {
            PlotCycle(0, 0, 0);
        }
 
    ~Cycle(){}
 
        float PlotCycle(float diametr, float xC, float yC)
        {
            xCenter = xC;
            yCenter = yC;
 
            for(int x = diametr*(-1)+xCenter ; x <= diametr+xCenter; x++) 
                 for(int y = diametr*(-1)+yCenter ; y <= diametr+yCenter; y++)
                       draw((xPoint - xCenter)*(xPoint - xCenter) + (yPoint + yCenter)*(yPoint + yCenter));
                       // функция draw не определена !!! Сам пиши ;)
        }
 
        float GetRadius()
        {
            radius = (xPoint - xCenter)*(xPoint - xCenter) + (yPoint + yCenter)*(yPoint + yCenter);
            return sqrt(radius);
        }
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru