Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14

Вычислить стороны треугольника, при значении "NaN" вывести сообщение в alert()

09.12.2012, 12:39. Показов 1628. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все работает, НО если вбиты неверные значения то выводит просто NaN, а нужно чтобы при значении NaN появлялось окошко alert() с сообщением что стороны не верны.
Вот мой код:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
<head>
<title>
math javascript
</title>
<script type="text/javascript" src="script.js">
</script>
</head>
<body>
<form name="forma3">
Сторона 1 <input type="text" size="8" maxlength="8" name="st1">
Сторона 2 <input type="text" size="8" maxlength="8" name="st2">
Сторона 2 <input type="text" size="8" maxlength="8" name="st3">
<br>
<br>
<input type="button" value="Вычислить" onClick="areaOfTriangle(forma3);">
<input type="reset" value="Очистить">
Результат <input type="text" size="8" maxlength="8" name="res">
</form>
</body>
</html>
Скрипт:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
function areaOfTriangle(obj)
{
var a=1*obj.st1.value;
var b=1*obj.st2.value;
var c=1*obj.st3.value;
var p=(a+b+c)/2;
var
s=Math.sqrt(p*(p-a)*(p-b)*(p-c));
 
if (s==NaN)
alert("asdasd");
s=s.toFixed(2);
obj.res.value=s; }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.12.2012, 12:39
Ответы с готовыми решениями:

В треугольнике заданы две стороны a, b ,c. Вычислить и вывести на экран остальные элементы треугольника.
помогите пожалуйста дописать программу,по блок-схеме углы вроде написал,но правильно ли? #include &lt;iostream&gt; #include...

NaN в ответе при значении ниже 2
program p1; var x:real; y:real; begin read(x); writeln(((1/(x*sqrt(2*pi)))*exp(-1/2*(sqrt(Ln(x)-1))))); writeln(y); ...

В треугольнике заданы две стороны a, b и площадь S. Вычислить и вывести на экран остальные элементы треугольника.
В треугольнике заданы две стороны a, b и площадь S. Вычислить и вывести на экран остальные элементы треугольника. Помогите...

10
 Аватар для Rayden
12 / 12 / 3
Регистрация: 08.01.2012
Сообщений: 83
09.12.2012, 13:32
JavaScript
1
2
3
if(!s)
alert('Ваш алерт')
// и манипуляции далее
1
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
09.12.2012, 13:35  [ТС]
Цитата Сообщение от Rayden Посмотреть сообщение
JavaScript
1
2
3
if(!s)
alert('Ваш алерт')
// и манипуляции далее
Ого, как просто.
Спасибо огромное!
0
 Аватар для Rayden
12 / 12 / 3
Регистрация: 08.01.2012
Сообщений: 83
09.12.2012, 14:12
вы поняли что тут происходит?
! - отрицание. Т.е. если s не true срабатывает блок.
0
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
09.12.2012, 14:41  [ТС]
Цитата Сообщение от Rayden Посмотреть сообщение
вы поняли что тут происходит?
! - отрицание. Т.е. если s не true срабатывает блок.
Понял.
Получается что NaN - false.
Спасибо
0
09.12.2012, 16:16

Не по теме:

Цитата Сообщение от Cheezo Посмотреть сообщение
Получается что NaN - false.
совсем нет. NaN - Not a Number :)

0
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
09.12.2012, 17:11
!s верно также при s == 0. Может, тогда лучше s != s?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
09.12.2012, 17:16
а может тогда лучше все же isNaN?
0
0 / 0 / 0
Регистрация: 30.05.2012
Сообщений: 14
09.12.2012, 17:17  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
а может тогда лучше все же isNaN?
Я гуглил, пытался применить, но не работало.
Поэтому я и обратился на форум
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
09.12.2012, 17:28
JavaScript
1
2
3
4
if( isNaN(s) ) {
  alert('message')
  return
}
Добавлено через 2 минуты
только не забывайте, что "число" - преобразуется в число и будет восприниматься как число

Добавлено через 1 минуту
P.S. Пустая строка также..
1
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
10.12.2012, 08:12
а может таки test() использовать
JavaScript
1
2
var n="y78";
if(/[^0-9]/.test(n)){alert("это не число");};
Цитата Сообщение от Cheezo Посмотреть сообщение
Сторона 2 <input type="text" size="8" maxlength="8" name="st3">
здесь надо Сторона 3
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.12.2012, 08:12
Помогаю со студенческими работами здесь

Выдает ответ NaN при отрицательном значении
Выдает ответ NaN при отрицательном значении (а именно -0,71) a=2.8; b=3.4; c=-0.71; x=1.12 Var z, a, b, c, x:real; ...

Даны три стороны треугольника. Треугольник тупоугольный, нужно вывести стороны и его площадь в порядке возрастания
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { setlocale(LC_ALL, (&quot;Russian&quot;)); int i, j; ...

Даны a, b, c – стороны треугольника. Вычислить по формуле Герона площадь треугольника S
Помогите решить задачу. Даны a, b, c – стороны треугольника. Вычислить по формуле Герона площадь треугольника S.

Ввести стороны треугольника, вычислить все углы треугольника в градусах (программа не запускается)
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() {    double a, b, c, c1, c2, c3, temp;    const double PI...

Вычислить высоту треугольника, зная две стороны треугольника и угол между ними (использовать ссылки)
Доброго времени суток,помогите пожалуйста Вычислить высоту треугольника, зная две стороны треугольника и угол между ними. Написать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru