Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Проверка существования треугольника (https://javascript.ru/forum/dom-window/59194-proverka-sushhestvovaniya-treugolnika.html)

unkind 31.10.2015 18:01

Проверка существования треугольника
 
Здравствуйте!
Напишите программу, которая определяет, можно ли построить треугольник с заданными длинами сторон.

Вот что получилось:
<html>
<head><meta charset="utf-8">
<script language="JavaScript">

var arr = new Array(4);
var i;
for(i=1;i<4;i++)
{
array[i]=prompt("Введите " +i+" сторону:");
 }

function trangel(arr){
if(arr[0]<arr[1]+arr[2]&&arr[2]<arr[0]+arr[2]&&arr[2]<arr[0]+arr[1])
{
alert("Треугольник с такими сторонами существует");

}
else{
alert("Треугольник с такими сторонами НЕ существует");
}
 
trangel(arr);

</script>
</head>
<body>

</body>

</html>


Ничего не происходит при запуске, подозреваю,что я как-то неправильно сравниваю элементы массива

ruslan_mart 31.10.2015 18:33

unkind, ф-цию забыли закрыть }

unkind 31.10.2015 18:36

Ruslan_xDD,
эт оя заметил,но результат не изменился,может с массивом напутал
делал по этой формуле
(a < b+c) and (b < a+c) and (c < a+b)

рони 31.10.2015 18:37

unkind,
строка 7 массивы начинаются с нуля
строка 9 array откуда взялся и перед prompt плюс
+prompt("Введите " +(i+1)+" сторону:");

строка 13 где условие для arr[1]
строка 21 где?

unkind 31.10.2015 18:44

рони,
<html>
<head><meta charset="utf-8">
<script language="JavaScript">
var arr = new Array(3);
var i;
for(i=0;i<2;i++)
{
array[i]=prompt("Введите " +i+" сторону:");
 }
function trangel(arr){
if(arr[0]<arr[1]+arr[2]&&arr[2]<arr[0]+arr[2]&&arr[2]<arr[0]+arr[1])
{
alert("Треугольник с такими сторонами существует");
}
else{
alert("Треугольник с такими сторонами НЕ существует");
}
 }
trangel(arr);
</script>
</head>
<body>
</body>
</html>

Исправил

рони 31.10.2015 18:54

unkind,
<html>
<head><meta charset="utf-8">
<script>

var arr = new Array(3);
var i;
for(i=0;i<3;i++)
{
arr[i]= +prompt("Введите " +(i+1)+" сторону:","");
 }

function trangel(arr){
if(arr[0]<(arr[1]+arr[2])&&arr[1]<(arr[0]+arr[2])&&arr[2]<(arr[0]+arr[1]))
{
alert("Треугольник с такими сторонами существует");

}
else{
alert("Треугольник с такими сторонами НЕ существует");
}
}
trangel(arr);

</script>
</head>
<body>

</body>

</html>

unkind 31.10.2015 18:54

что-то не отрабатывает,т.е ничего не происходит

unkind 31.10.2015 18:55

рони,
скажите, а какую роль играет +?
все работает!

рони 31.10.2015 19:02

Цитата:

Сообщение от unkind
скажите, а какую роль играет +?

делает из строки например "10" число 10 чтобы arr[1]+arr[2] тоже было числом.
преобразование-к-числу

unkind 31.10.2015 19:08

рони,
понял,а так получается что строки складывает,верно?


Часовой пояс GMT +3, время: 01:49.