![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Ильмир |
![]()
Сообщение
#1
|
Школьник ![]() Группа: Продвинутые Сообщений: 11 Регистрация: 25.1.2012 Город: Уфа Учебное заведение: УГАТУ Вы: студент ![]() |
Здравствуйте.
Перезалил. Пишу программу. Программа должна нарисовать два круга. Радиусы известны. Один круг маленький другой большой они вот должны касаться. (IMG:http://cs301209.vk.com/u16431588/143297543/z_d9bbc52e.jpg) Проблема начинается с маленьким кругом. По идеи что бы его нарисовать нужно знать его координаты. Координатам является центр окружности. Координаты маленького круга по X найти легко, а вот по Y не как не могу додуматься. Спасибо за внимание.(IMG:style_emoticons/default/smile.gif) |
![]() ![]() |
Dimka |
![]()
Сообщение
#2
|
Доцент ![]() ![]() ![]() ![]() ![]() ![]() Группа: Преподаватели Сообщений: 4 925 Регистрация: 26.2.2007 Город: _ Вы: другое ![]() |
Пишу программу. Программа должна нарисовать два круга. Радиусы известны. Один круг маленький другой большой они вот должны касаться. (IMG:http://cs301209.vk.com/u16431588/143297543/z_d9bbc52e.jpg) Ничего не понял. Напишите яснее что должна делать Ваша программа. Почему три рисунка? |
Ильмир |
![]()
Сообщение
#3
|
Школьник ![]() Группа: Продвинутые Сообщений: 11 Регистрация: 25.1.2012 Город: Уфа Учебное заведение: УГАТУ Вы: студент ![]() |
Ничего не понял. Напишите яснее что должна делать Ваша программа. Почему три рисунка? Программа должна рисовать две окружности. Заданны произвольные радиусы. Условие что бы маленькая окружность касалась большого круга и диаметра как показано на рисунке. В рисунке показаны различные варианты радиуса окружностей для более лучшего понимания задачи. По условию видно что r не может больше чем R/2, иначе не будет касания большой окружности и диаметра как показано на рисунке. (IMG:http://cs301209.vk.com/u16431588/143297543/z_d9bbc52e.jpg) Для решения данной задачи нужно найти координаты маленькой окружности. Я вывел чудом формулу.помощью системы уравнений окружности. (IMG:http://cs5984.vk.com/u16431588/143297543/x_dc6bc1c0.jpg) Координаты большой окружности 0,0. То есть это начало координат. На декартовую систему координат нарисованная в самом низу не обращать внимания. потом легко будет перенести на нижнюю систему координат. R, r , x0=-r известны x,y, y0 не известны. Так как не известны x,y;(координаты точки касания) я решил взял случай в котором радиус маленькой окружности будет максимальной величины. То есть r=R/2. вот как тут. (Рисунок первый) (IMG:http://cs301209.vk.com/u16431588/143297543/z_d9bbc52e.jpg) и взял их точки касания. Не трудно заметить что они будет равны x=-R,y=0 и подставил в уравнение. Теперь x,y; типа известны. Вывел формулу и она оказалось рабочей для любых r<=R/2. Нашел y0; Теперь координаты маленького круга известны. Они вычисляются по формуле x0=-r; y0=sqrt(2*R*r-R*R) И программа рисует окружности как надо(IMG:style_emoticons/default/smile.gif) Следующая поставленная задача состоит в нахождении x,y то есть координаты точки касания окружностей. Теоретически можно таким же образом найти x,y. Только тут две не известные координаты и все гораздо сложней. Теперь y0,x0,r,R известны; x,y не известны. 20 раз выводил формулу с нуля. И нет не работает |
Dimka |
![]()
Сообщение
#4
|
Доцент ![]() ![]() ![]() ![]() ![]() ![]() Группа: Преподаватели Сообщений: 4 925 Регистрация: 26.2.2007 Город: _ Вы: другое ![]() |
Вот.
Радиус большой окружности R и абсцисса точки касания на большой окружности x1 должны быть заданы. Дальше прога вычисляет уравнение малой окружности и строит его. Эскизы прикрепленных изображений ![]() ![]() |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 28.5.2025, 2:23 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru