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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2009, 23:00   #11
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

.Нет, при любом значении d. При вводе в d,чисел -1,0,1 вообще не происходит вычисление, просто нажатие на кнопку.

Последний раз редактировалось prikolist; 09.04.2009 в 23:04.
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 23:09   #12
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Вот справка( арккосинус)

Цитата:
ERRORS

These functions shall fail if:

Domain Error
The x argument is finite and is not in the range [-1,1], [MX] [Option Start] or is ±Inf. [Option End]

If the integer expression (math_errhandling & MATH_ERRNO) is non-zero, then errno shall be set to [EDOM]. If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, then the invalid floating-point exception shall be raised.
("")(Э_Є)("") вне форума Ответить с цитированием
Старый 09.04.2009, 23:12   #13
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Еще есть acosf и acosl
("")(Э_Є)("") вне форума Ответить с цитированием
Старый 09.04.2009, 23:17   #14
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Та же ошибка,только вначале ошибки вместо acos, стоит acosl. При d = 0,-1,1 вообще не вычисляет, и ничего не выдаёт.

Последний раз редактировалось prikolist; 09.04.2009 в 23:19.
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 23:39   #15
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Ошибка в формуле!
Код:
otvet = pow(4*(exp(sqrt(abs(a/b)))-exp(-sqrt(abs(a/b)))/2)+3*acos(d),c);
Cpluser вне форума Ответить с цитированием
Старый 09.04.2009, 23:51   #16
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Выдаёт,всё теже ошибки.Может кто-нибудь разъяснить проблемму?
prikolist вне форума Ответить с цитированием
Старый 10.04.2009, 00:00   #17
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Хзн шо за. протестируйте acos в отдельном предложении, замените переменную "d", временно, на константу. Наращивайте сложность пока не достигнете ошибки
("")(Э_Є)("") вне форума Ответить с цитированием
Старый 10.04.2009, 00:02   #18
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Еще имеет смысл заменить b = StrToFloat(Edit2->Text);
на просто присвоение значения. Но не b = 1 а b = 1.0, короче флоат. А то будет b = (float)1
("")(Э_Є)("") вне форума Ответить с цитированием
Старый 10.04.2009, 00:08   #19
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Если я не введу b = StrToFloat(Edit2->Text); тогда, не преобразую к числовому типу введённые значения в d,значит всё,что я буду вводить в d, в Эдите будет текстом, и считать не будет его числом. Кто-нибудь может дать более оптимальную идею?
prikolist вне форума Ответить с цитированием
Старый 10.04.2009, 00:23   #20
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Надо выяснить, можно дебагом, является ли результат b = StrToFloat(Edit2->Text) корректным.
("")(Э_Є)("") вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросы (запись, формулы) Ururu Microsoft Office Excel 7 04.03.2009 14:15
Формулы SoAndSo Microsoft Office Word 2 09.11.2008 20:13
cтранная запись формулы ЕСЛИ: "=+ЕСЛИ(..." icore2008 Microsoft Office Excel 4 10.04.2008 21:32