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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2010, 14:28   #1
Inqui
Новичок
Джуниор
 
Регистрация: 26.05.2010
Сообщений: 1
По умолчанию Простая арифметическая функция выдает неверное значение delphi

Всем доброго времени суток, проблема в следующем:
имеется функция
Код:
function funcalfa4(alfa1,alfa2,alfa3,fi1,fi2,fi3:real):real;
 var Z:real;
 begin
  Z:=(sqr(alfa2)-sqr(alfa3))*fi1+(sqr(alfa3)-sqr(alfa1))*fi2+(sqr(alfa1)-sqr(alfa2))*fi3;
 Z:=Z/((alfa2-alfa3)*fi1+(alfa3-alfa1)*fi2+(alfa1-alfa2)*fi3);
 Z:=Z/2;
 funcalfa4:=Z;
 end;
Эта функция должна считать большую дробь, поэтому для удобства я разбил ее на 3 части.

Программа выдавала ошибку "<не помню что> floating point" , и я поставив точку остова начал смотреть что получается. Функции передаются перменные:
alfa1=2.7,alfa2=3.2,alfa3=3.7,fi1=1 0135,287637,fi2=10101,383947,fi3=10 074,720304.
и Z на первой же строке становится равной 2,6369023136e-308.
На калькуляторе ручками получается в этой строке Z=-38,032. Подстажите из-за чего может быть такая проблема ? Заранее спасибо

Последний раз редактировалось Inqui; 26.05.2010 в 14:33.
Inqui вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SizeOf выдает значение на порядок меньше. Alex Cones Общие вопросы Delphi 4 15.01.2010 21:24
Почему функция не возвращает никакое значение? Тупой Общие вопросы Delphi 1 31.05.2009 17:31
Функция ВПР возвращает лишь 1 ближайшее к заданному значение...... Death Dealer Microsoft Office Excel 4 24.11.2008 11:26
Функция не меняет значение переменной.... DoHJICyaH Общие вопросы C/C++ 1 02.11.2008 20:10