Треугольник с медианами!, SOS =) |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Треугольник с медианами!, SOS =) |
mahmut |
21.10.2005 11:28
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Макс Репутация: 0 |
Привет всем!
По заданным координатам вершин А, В и С треугольника найти его сумму длин медиан. Изобразить треугольник на экране с медианами. Помогите чем нить!! Особенно как всё это дело изобразить не очень ясно!! С помощью класса TCanvas или как?! Сообщение отредактировано: mahmut - 21.10.2005 11:28 |
volvo |
21.10.2005 11:42
Сообщение
#2
|
Гость |
mahmut, курс геометрии средней школы:
длина медианы, проведенной к стороне A равна: Цитата Ma = Sqrt(2 * (b^2 + c^2) - a^2) / 2; для остальных медиан - по тому же принципу... Длину каждой стороны по заданным координатам вершин найти, я думаю, сможешь... Отрисовываешь на канве (MoveTo, LineTo) |
Atos |
21.10.2005 11:55
Сообщение
#3
|
Прогрессор Группа: Модераторы Сообщений: 602 Пол: Мужской Реальное имя: Михаил Репутация: 9 |
формула есть:Длина медиана, проведённой к стороне c, равна половине квадратного корня из (2a^2 + 2b^2 - c^2)
А рисовать, действительно, проще всего по канве. (например, TImage или TPaintBox) Находишь координаты середин сторон, и просто проводишь шесть линий - треугольник с медианами готов В который раз запоздал с ответом... З.Ы. и главное, в трёхсотом сообщении... Сообщение отредактировано: Atos - 21.10.2005 11:59 |
mahmut |
21.10.2005 12:14
Сообщение
#4
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Макс Репутация: 0 |
Цитата(Atos @ 21.10.2005 18:55) формула есть:Длина медиана, проведённой к стороне c, равна половине квадратного корня из (2a^2 + 2b^2 - c^2) А рисовать, действительно, проще всего по канве. (например, TImage или TPaintBox) Находишь координаты середин сторон, и просто проводишь шесть линий - треугольник с медианами готов В который раз запоздал с ответом... З.Ы. и главное, в трёхсотом сообщении... Да это то всё ясно... Вот тут чаво то не очень работает! Не подскажите где я тута накосячил!! И ещё был бы рад примерчику хотя бы как нарисовать треугольник!!! Код procedure TForm4.Label12Click(Sender: TObject); var x1, y1, x2, y2, x3, y3: real;{корни уравнения} s1, s2, s3: string[7]; code: integer; ma,mb,mc: double; dda,ddb,ddc: double; Begin {ввод исходных данных из полей редактирования} val(edit1.text,x1,code); val(edit2.text,y1, code); val(edit1.text,x2,code); val(edit2.text,y2, code); val(edit1.text,x3,code); val(edit2.text,y3, code); dda := sqrt(((x2-x1)*(x2-x1))-((y2-y1)*(y2-y1))); ddb := sqrt(((x3-x2)*(x3-x2))-((y3-y2)*(y3-y2))); ddc := sqrt(((x1-x3)*(x1-x3))-((y1-y3)*(y1-y3))); str(dda,s1); str(ddb,s2); str(ddc,s3); Label1.caption:='Корни уравнения' +chr(13)+'dda= ' + s1 +chr(13)+'ddb= ' + s2 +chr(13)+'ddc= ' + s3; |
volvo |
21.10.2005 12:31
Сообщение
#5
|
Гость |
mahmut а попроще (что-то в таком духе):
function get_side(xst, yst, xfn, yfn: double): double; только на форме у тебя должны быть не 2 Edit-а, а 6 (1 и 2 содержат X, Y координаты вершины A; 3 и 4 - для вершины B; ну, а 5 и 6 - для C соответственно)... Как нарисовать треугольник сейчас покажу... |
volvo |
21.10.2005 13:02
Сообщение
#6
|
Гость |
Например, вот так:
triangle.rar ( 2.91 килобайт )
Кол-во скачиваний: 302
Тестировалось с такими значениями: точка A: (10, 10) точка B: (10, 2) точка C: (2, 5) |
mahmut |
21.10.2005 13:13
Сообщение
#7
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: Макс Репутация: 0 |
Спасибо, огромное! Обучил не грамотного!!
|
Текстовая версия | 28.04.2024 10:35 |