Показать сообщение отдельно
  #1 (permalink)  
Старый 19.03.2014, 00:58
Аватар для SnowyWolf
Интересующийся
Отправить личное сообщение для SnowyWolf Посмотреть профиль Найти все сообщения от SnowyWolf
 
Регистрация: 18.03.2014
Сообщений: 29

Не правильный вывод данных.
Есть скрипт:
var X1, Y1, X2, Y2, X3, Y3, a, b, c, p, S,A, B, C, X0, Y0;
		X1=prompt("X1","-2"); X1=parseInt(X1);
		Y1=prompt("Y1","1"); Y1=parseInt(Y1);
		X2=prompt("X2","2"); X2=parseInt(X2);
		Y2=prompt("Y2","2"); Y2=parseInt(Y2);
		X3=prompt("X3","1"); X3=parseInt(X3);
		Y3=prompt("Y3","-2"); Y3=parseInt(Y3);
		//Вывод координат точек
		document.write("Координаты точек:<br>");
		document.write('X1=<input type="text" size=2 disabled value="'+X1+'"><br>');
		document.write('Y1=<input type="text" size=2 disabled value="'+Y1+'"><br>');
		document.write('X2=<input type="text" size=2 disabled value="'+X2+'"><br>');
		document.write('Y2=<input type="text" size=2 disabled value="'+Y3+'"><br>');
		document.write('X3=<input type="text" size=2 disabled value="'+X3+'"><br>');
		document.write('Y3=<input type="text" size=2 disabled value="'+Y3+'"><br>');
		a=Math.sqrt(Math.pow((X2-X1),2)+Math.pow((Y2-Y1),2)); a=parseInt(a);//Длина первой стороны треугольника
		b=Math.sqrt(Math.pow((X3-X2),2)+Math.pow((Y3-Y2),2)); b=parseInt(b);//Длина второй стороны треугольника
		c=Math.sqrt(Math.pow((X1-X3),2)+Math.pow((Y1-Y3),2)); c=parseInt(c);//Длина треттьей стороны треугольника
			document.write('Длины сторон AB, BC, CA: <input type="text" disabled value="'+a+', '+b+', '+c+'"><br>');
		p=((a+b+c)/2); p=parseInt(p);//Полу-периметр треугольника
		S=Math.sqrt(p*(p-a)*(p-b)*(p-c)); S=parseInt(S);//Площадь треугольника
		
		//Проверка возможности построения и последуещие действия в случае возможности
		document.write("Площадь треугольника:<br>");
		if (a+b>c)//При этом условии построение возможно
		document.write('<br>Площадь ABC = <input type="text" disabled value="'+S+'"><br>');
		else
		document.write('<input type="text" disabled value="Треугольник не существует"><br>');
			//Определение типа треугольника
			document.write("Тип треугольника:<br>");
			if ((Math.pow(a,2)+Math.pow(b,2))==(Math.pow(c,2)))
			document.write('<input type="text" size=50 disabled value="Треугольник прямоугольный"><br>');
			else
			if ((Math.pow(a,2)+Math.pow(b,2))>(Math.pow(c,2)))
			document.write('<input type="text" size=50 disabled value="Треугольник тупоугольный"><br>');
			else
			if ((Math.pow(a,2)+Math.pow(b,2))<(Math.pow(c,2)))
			document.write('<input type="text" size=50 disabled value="Треугольник остроугольный"><br>');	
			else 
			document.write('<input type="text" disabled value="Треугольник не существует"><br>');
			X0=0; X0=parseInt(X0);
			Y0=0; Y0=parseInt(Y0);
			A=((X1-X0)*(Y2-Y1)-(X2-X1)*(Y1-Y0)); A=parseInt(A);
			B=((X2-X0)*(Y3-Y2)-(X3-X2)*(Y2-Y0)); B=parseInt(B);
			C=((X3-X0)*(Y1-Y3)-(X1-X3)*(Y3-Y0)); C=parseInt(C);
			//Определение места расположения начала координат
			document.write("Положение начала координат:<br>");
			if ((A>0, B>0, C>0) || (A<0, B<0, C<0))
			document.write("Координата (0,0) лежит в пределах треугольника");
			else
			if ((A==0, B>0, C>0) || (A>0, B==0, C>0) || (A>0, B>0, C==0) || (A==0, B<0, C<0) || (A<0, B==0, C<0) || 
			(A<0, B<0, C==0) || (A==0, B<0, C>0) || (A==0, B>0, C<0) || (A<0, B==0, C>0) || (A>0, B==0, C<0) || (A<0, B>0, C==0) || (A>0, B<0, C==0))
			document.write("Координата (0,0) лежит на одной из сторон треугольника");
			else
			document.write("Координата (0,0) не лежит в пределах треугольника");

1)Вывод информации: Координаты выводит правильно, а длины сторон только первое значение, почему?
2)Когда определяю тип треугольника, то когда ввожу координаты для прямоугольного, выводит, что треугольник тупоугольный?
3)При вводе явно не существующего треугольника(координаты находятся на одной прямой) выводит, что треугольник остроугольный?
4) Я уже не говорю про "Определение типа треугольника", там постоянно точка лежит в пределах треугольника!
P.S. Изучаю JavaScript около недели, поэтому извините за мой тупизм!
Ответить с цитированием