Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2011, 19:52   #1
Dangersss
 
Регистрация: 02.11.2011
Сообщений: 8
По умолчанию Определить номера точек, которые могут являться вершинами равнобедренного треугольника (Паскаль)

Всем привет. Прошу помочь с задачей, т.к. сам решить не могу:

Определить номера точек, которые могут являться вершинами равнобедренного треугольника.

Надо вводить n точек и их координаты (x и y). Я это делаю через два двумерных массива.
Листинг показать не могу, т.к. пишу программу в колледже.
Формула нахождения растояния между прямыми:
Код:
d^2 = (х2— х1)^2 + (y2— y1)^2.
Я вообще незнаю как её решать
Надеюсь на Вашу помощь
Спасибо!
Dangersss вне форума Ответить с цитированием
Старый 08.11.2011, 20:11   #2
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

Цитата:
Надо вводить n точек и их координаты (x и y). Я это делаю через два двумерных массива.
и теперь тупо перебор
Код:
 for i:=1 to n-2 do
 for j:=i+1 to n-1 do
 for k:=j+1 to n do
{у тя 3 точки {x[i],y[i]} {x[j],y[j]}, {x[k],y[k]}ищи между ними  расстояния и сравнивай если два из них равны выписывай i,j,k}
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Старый 09.11.2011, 22:15   #3
Dangersss
 
Регистрация: 02.11.2011
Сообщений: 8
По умолчанию

Цитата:
Сообщение от IT-man Посмотреть сообщение
и теперь тупо перебор
Код:
 for i:=1 to n-2 do
 for j:=i+1 to n-1 do
 for k:=j+1 to n do
{у тя 3 точки {x[i],y[i]} {x[j],y[j]}, {x[k],y[k]}ищи между ними  расстояния и сравнивай если два из них равны выписывай i,j,k}
Я плохо понимаю двумерные массивы, можете, пожалуйста, подробней расписать?)
Dangersss вне форума Ответить с цитированием
Старый 14.11.2011, 10:59   #4
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Тут совершенно не нужны двумерные массивы. Тут нужны два одномерных массива (или один массив записей). Вот, я продолжу то, что написал IT-man:
Код:
const
  e= 1e-7;
var
  x,y: array[1..n] of integer;  // or maybe real..
  a,b,c: real;
.....
  // enter points coordinats here

  for i:=1 to n-2 do
    for j:=i+1 to n-1 do
      for k:=j+1 to n do begin
        a:= Sqrt(Sqr(x[i]-x[j]) + Sqr(y[i]-y[j]));
        b:= Sqrt(Sqr(x[j]-x[k]) + Sqr(y[j]-y[k]));
        c:= Sqrt(Sqr(x[k]-x[i]) + Sqr(y[k]-y[i]));
        if (Abs(a-b)<e) or (Abs(b-c)<e) or (Abs(c-a)<e) then
          writeln('points numbered as ',i,', ',j,', ',k,' define an isosceles triangle');
      end;
Предпочитаю на "ты".

Последний раз редактировалось TinMan; 14.11.2011 в 11:01.
TinMan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
даны три числа. Если они могут быть длинами сторон треугольника, определите его вид и найдите высоты (Паскаль) charming Помощь студентам 8 26.09.2011 20:48
Определить сумму тех веществееных чисел,которые больше Р. [Паскаль] Анна22 Помощь студентам 1 07.12.2010 20:34
Могут ли значения быть сторонами треугольника? fs444 Общие вопросы C/C++ 7 25.01.2010 15:55
вычислите длины высот равнобедренного треугольника Feil Помощь студентам 1 23.12.2009 14:19
определить радиус и центр окружности, на кот. лежит наиб.число точек заданного на плоскости мн-ва точек) kcю Помощь студентам 0 17.11.2009 19:50