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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.11.2010, 22:54   #1
WitaliG
Пользователь
 
Регистрация: 17.08.2010
Сообщений: 75
По умолчанию Что обозначает NaN?

Здравствуйте!
Дана задача:
Вычислить объем пирамиды, основанием которой является треугольник, для значений А, В, С и Н данных в контрольном примере. Для вычисления площади основания использовать формулу Герона:

,
где:
.
Объем пирамиды:
.

Исходные данные взять из контрольного примера.
Контрольный пример: A=3, B=4, C=5, H=6. Результат V=12.
Я написал код:
Код:
var
    a,b,c,h,S,P,V :real;
begin
    a :=3;  b :=4;   c :=5;   h :=6;
    p :=(a+b+c)/c;
    s :=sqrt(p*(p-a)*(p-b)*(p-c));
    v :=(s*h)/3;
    writeln(v);
end.
Но результат выдает: NaN
Вопрос: Что обозначает NaN? И что я неправильно написал, что у меня правильный результат не получается?
С уважением Виталий.
Почему-то формулы не встали в форму. А как их вставить?!

Последний раз редактировалось Stilet; 22.11.2010 в 09:41.
WitaliG вне форума Ответить с цитированием
Старый 21.11.2010, 22:58   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

NaN (Not-a-Number)
mihali4 вне форума Ответить с цитированием
Старый 21.11.2010, 23:20   #3
Sam Gold
Форумчанин
 
Аватар для Sam Gold
 
Регистрация: 26.03.2010
Сообщений: 538
По умолчанию

Цитата:
И что я неправильно написал, что у меня правильный результат не получается?
Вот здесь вы извлекаете квадратный корень из отрицательного числа:
Код:
s :=sqrt(p*(p-a)*(p-b)*(p-c));
Единственный способ стать умнее - играть с более умным противником.
Sam Gold вне форума Ответить с цитированием
Старый 21.11.2010, 23:21   #4
WitaliG
Пользователь
 
Регистрация: 17.08.2010
Сообщений: 75
По умолчанию

А тогда, что означает (Not-a-Number)?!
Там получается корень квадратный из 36.

Последний раз редактировалось WitaliG; 21.11.2010 в 23:26.
WitaliG вне форума Ответить с цитированием
Старый 22.11.2010, 09:43   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Там получается корень квадратный из 36.
Окак? А проверить?
p*(p-a)*(p-b)*(p-c) дает -5.9904
И зачем вторую тему создавать? Отладчиком пройдись и поймешь что там не NaN должен вылезти а прога вообще упадет...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.11.2010, 17:28   #6
WitaliG
Пользователь
 
Регистрация: 17.08.2010
Сообщений: 75
По умолчанию

Спасибо за помощь.
WitaliG вне форума Ответить с цитированием
Старый 22.11.2010, 17:50   #7
bpystep
Форумчанин
 
Регистрация: 25.02.2009
Сообщений: 180
По умолчанию

Код:
var
    a,b,c,h,S,P,V :real;
begin
    a :=3;  b :=4;   c :=5;   h :=6;
    p :=(a+b+c)/2;
    s :=sqrt(p*(p-a)*(p-b)*(p-c));
    v :=(s*h)/3;
    writeln(v);
end.
Запомните, вы едете в Россию, поэтому когда компьютер попросит вас набрать пароль, наберите слово "Пароль"
bpystep вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что обозначает NaN? WitaliG Помощь студентам 2 21.11.2010 23:36
Что обозначает[inv] и [nbl]? Olya2131 Microsoft Office Access 7 10.06.2010 17:26
написать что обозначает каждая строчка Ozzzy Помощь студентам 2 31.05.2010 13:13
-NaN при подсчетах что это?? kostya2 Общие вопросы C/C++ 4 07.05.2009 17:56