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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2012, 13:12   #1
Konvulsia
Новичок
Джуниор
 
Регистрация: 29.09.2012
Сообщений: 1
По умолчанию Координаты 3-х точек на плоскости.Если они могут быть вершинами равнобедренного остроугольного треугольника, вычислить.. (Паскаль)

Пусть даны координаты трех точек на плоскости.Если они могут быть вершинами равнобедренного остроугольного треугольника, вычислите его площадь.
И должен удовлетворять этому условию(на картинке)

Если тре-ник существует, ранобедренный и остроугольный, программа должна вычислить площадь, если же не будет удолетворять хатя бы один критерий прога не должна вычислять площадь.
вот я написал программу, но она все равно вычисляет площадь во всех ситуациях и еще в условии с(тре-ник остроугольный), пишет что тре-ник нестроугольный если даже он остроугольный
Пожалуйста, исправьте мою программу, чтобы она работала правильно

Код:
program qwerty;
var x1,y1,x2,y2,x3,y3:integer;
    a,b,c,s,p:real;
  begin
write('x1=');
readln(x1);
write('y1=');
readln(y1);
write('x2=');
readln(x2);
write('y2=');
readln(y2);
write('x3=');
readln(x3);
write('y3=');
readln(y3);
  a:=sqrt(sqr(x2-x1)+sqr(y2-y1));
  b:=sqrt(sqr(x3-x2)+sqr(y3-y2));
  c:=sqrt(sqr(x3-x1)+sqr(y3-y1));
      if(a+b>c)and(a+c>b)and(b+c>a) then begin
      p:=(a+b+c)/2;
      s:=sqrt(p*(p-a)*(p-b)*(p-c));
	  if(a=b)or(a=c)or(b=c) then begin
	       if(((a*a-b*b-c*c)/(2*b*c))>0) and
	       (((b*b-a*a-c*c)/(2*a*c))>0) and
	       (((c*c-a*a-c*c)/(2*a*b))>0) then begin
	       writeln('tre-nik octri')
	       end
	       else writeln('tre-nik ne ostri');
	   writeln('ravnobedr')
	   end
	   else writeln('neravnobed');
	writeln('s=',s:2:0);
	end
	else writeln('no');
      readln;
      end.


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 29.09.2012 в 13:33.
Konvulsia вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано 3 точки своими координатами х,у. Будет ли они вершинами треугольника. Если да - найти периметр и площадь треугольника Arhi555 Паскаль, Turbo Pascal, PascalABC.NET 2 11.09.2012 17:46
Даны координаты n точек на плоскости. Найти номера двух точек, расстояние между которыми наибольшее. Viwwna Паскаль, Turbo Pascal, PascalABC.NET 2 19.11.2011 06:33
Определить номера точек, которые могут являться вершинами равнобедренного треугольника (Паскаль) Dangersss Помощь студентам 3 14.11.2011 10:59
даны три числа. Если они могут быть длинами сторон треугольника, определите его вид и найдите высоты (Паскаль) charming Помощь студентам 8 26.09.2011 20:48
вычислить периметр треугольника если даны координаты 3-х вершин(алгоритм функции) (Паскаль) анжелка Помощь студентам 2 03.04.2011 13:33