IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Высоты треугольника
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 34
Пол: Мужской

Репутация: -  0  +


Здравствуйте. Здесь часть программки,которая рисует треугольник и его высоты. Проблема в одном: там строчка выделена. Почему,когда g1=l она не переходит к выполнению условия??? Все пробую....скажите,где ошибка???Заранее благадарю!
Код
procedure TForm1.Button3Click(Sender: TObject);
const picScale = 10;
var
ma_x, ma_y, mb_x, mb_y, mc_x, mc_y: integer;
ha_x, ha_y, hb_x, hb_y, hc_x, hc_y: integer;
ba_x, ba_y, bb_x, bb_y, bc_x, bc_y: integer;
i,j,m:integer;
          k1,k2,k3,z1,z2,z3:integer;   {integer}
          p,a,b,c:real;
          g1,g2,l:{extended}real;
          Xh, Yh, Zh: integer;

begin
  with paintbox1.Canvas do begin
    pen.Color := clBlack;
    moveto(picScale*strtoint(edit1.Text), picScale*strtoint(edit2.Text));
    lineto(picScale*strtoint(edit3.Text), picScale*strtoint(edit4.Text));
    lineto(picScale*strtoint(edit5.Text), picScale*strtoint(edit6.Text));
    lineto(picScale*strtoint(edit1.Text), picScale*strtoint(edit2.Text));
pen.Color := clGreen;
    k1:=10*strtoint(edit1.Text);
   k2:=10*strtoint(edit3.text);
    k3:=10*strtoint(edit5.text);
  z1:=10*strtoint(edit2.text);
   z2:=10*strtoint(edit4.text);
    z3:=10*strtoint(edit6.text);
  a:= sqrt(sqr(k1-k2)+sqr(z1-z2));
  b:= sqrt(sqr(k2-k3)+sqr(z2-z3));
  c:= sqrt(sqr(k1-k3)+sqr(z1-z3));
  p:=(a+b+c)/2;


{g1:= abs(sqrt(sqr(i-k2)+sqr(j-z2))); }
  g2:= (2*sqrt(p*(p-a)*(p-b)*(p-c)))/c;
  l:=abs(g2);
    for i:=k1 to k3 do
    begin
    for j:=z1 to z3 do
    begin
     g1:= sqrt(sqr(i-k2)+sqr(j-z2));
      if (g1=l) then   {почему,когда g1=l она не переходит к выполнению условия???}
       begin
        Xh := i;
        Yh := j;  
       end;
       end; end;
       moveto(10*strtoint(edit3.Text), picScale*strtoint(edit4.Text));
    lineto(Xh, Yh);


Сообщение отредактировано: Глюк -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Глюк   Высоты треугольника   23.04.2007 1:03
volvo   Потому, что нельзя сравнивать вещественные числа н…   23.04.2007 1:08
Глюк   Потому, что нельзя сравнивать вещественные числа …   23.04.2007 2:30
Lapp   может что-то не так в самом тексте? Он иногда прав…   23.04.2007 12:34
Глюк   Во-первых, этот метод сам по себе неверный (в э…   23.04.2007 13:14
Lapp   а каким тогда способом можно найти точку,куда буд…   23.04.2007 13:43
Глюк   Ну, например, так: Высота из угла А делит противо…   23.04.2007 22:46
Lapp   как можно отложить отрезок,зная только его длину …   24.04.2007 5:26
Глюк   Все понятно? вообще-то не все... :unsure: B…   24.04.2007 23:29
Lapp   BC=a -это отрезок,на котором лежит высота треугол…   25.04.2007 0:58
Глюк   Проекция всегда меньше длины самого отрезка. …   25.04.2007 2:35
Глюк   Спасибо,сейчас работает,но он не правильно высоту …   23.04.2007 2:05
Глюк   :unsure: :unsure: подскажите,пожалуйста   24.04.2007 1:26
Глюк   у меня все-равно не так рисует...высота короткая п…   25.04.2007 4:20
Lapp   у меня все-равно не так рисует...высота короткая …   25.04.2007 10:40
Глюк   Lapp Ура. :) Всё наконец получилось! Спасибо …   25.04.2007 22:13
Глюк   Ещё я этот же способ применил и для рисования бисс…   26.04.2007 0:29
Lapp   Ещё я этот же способ применил и для рисования бис…   26.04.2007 1:01
Глюк   Lapp Ок. Спасибо! Попробуем :)   26.04.2007 17:32


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 27.04.2024 4:46
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name