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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2009, 21:34   #1
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
Плохо Запись тригоном.формулы

Здравствуйте программисты! Подскажите пожалуйста,как записать эту формулу.Я вложил внизу.
Изображения
Тип файла: jpg clip_image002.jpg (3.3 Кб, 162 просмотров)
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 22:10   #2
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

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

Выдаёт ошибку: acos DOMAIN error,полсе нажатия окей,ещё одну ошибку
pow OWERFLAW ERROR
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 22:21   #4
Bogood
Пользователь
 
Регистрация: 23.02.2008
Сообщений: 28
По умолчанию

модуль Math не забудь подключить
А я не парюсь, сразу винду сношу...
Bogood вне форума Ответить с цитированием
Старый 09.04.2009, 22:24   #5
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Я его подключил, но ошибки выходят,как исправить ошибки выше? Может нужно какое-то условие ввести?
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 22:28   #6
Bogood
Пользователь
 
Регистрация: 23.02.2008
Сообщений: 28
По умолчанию

Цитата:
Сообщение от prikolist Посмотреть сообщение
Я его подключил, но ошибки выходят,как исправить ошибки выше? Может нужно какое-то условие ввести?
тогда не знаю,попробуй еще переменные ввести и формулу на более простые части разбить-так проще ошибки увидеть. потом опять все в кучу собери если понадобится
А я не парюсь, сразу винду сношу...
Bogood вне форума Ответить с цитированием
Старый 09.04.2009, 22:33   #7
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
Плохо

Вот код программы, выдаёт постоянно эти 2 ошибки.
Выдаёт ошибку: acos DOMAIN error,полсе нажатия окей,ещё одну ошибку
pow OWERFLAW ERROR

Код:
//---------------------------------------------------------------------------


#include <vcl.h>
#include <math.h>   // Директива для sqrt,abs,pow
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
float a,b,c,h,otvet;
double d;



//Выводим результат в Label1  проверив на исключения
try
{
//Присваиваем переменным а,b,c,d,h введённые значения. в Edit1..Edit5
//Преобразуем с текстового типа символы в вещественый тип Float
a = StrToFloat(Edit1->Text);
b = StrToFloat(Edit2->Text);
c = StrToFloat(Edit3->Text);
d = StrToFloat(Edit4->Text);
h = StrToFloat(Edit5->Text);

//Результат вычислений присваиваем переменной "otvet"  проверив деление
// на значение b
if (b!=0)
{
otvet = pow(4*(exp(sqrt(abs(a/b)))-exp(-sqrt(abs(a/b))))+3*acos(d),c);
return;
}
else
{
MessageBox(0,"Введите другое значение b и повторите расчет, так как делить \n на b, при b=0 запрещенно, согласно законам программирования !",
"Программа создана Игорем",MB_ICONWARNING);
return;
}



//-----------------------------------------------------------




//Результат пполучаем в метке Label 1
Label1->Caption = "Результат=" + FloatToStrF(otvet,ffGeneral,7,2);
}
catch(EZeroDivide&)
{
MessageBox(0,"Ошибка! Деление на ноль!!!","Ошибка",MB_ICONERROR);
return;
}
catch(EConvertError&)
{
MessageBox(0,"Ошибка! Неправильно введено число в одном из \n полей. Возможно в полях присутствуют неправильные \n знаки вроде: w,п,!,%,$,. и т.д.","Ошибка",MB_ICONERROR);
return;
}
catch(EOverflow&)
{
ShowMessage("Выход числа за допустимый диапазон");
return;
}

}
//---------------------------------------------------------------------------
//Кнопка закрыть
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}

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

pow OWERFLAW ERROR является результатом acos DOMAIN error
попробуй выделить эту(acos) часть в отдельную формулу, и сохранять в переменной -> "передавать" в финальную формулу. Похоже, проблема в значении переменных, в частности "d"
("")(Э_Є)("") вне форума Ответить с цитированием
Старый 09.04.2009, 22:56   #9
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Всё равно,проблема таже.
prikolist вне форума Ответить с цитированием
Старый 09.04.2009, 22:57   #10
("")(Э_Є)("")
Форумчанин
 
Регистрация: 26.01.2009
Сообщений: 112
По умолчанию

Если просто выполнить acos(d) с тем же значением d то он выдает ошибку ?
("")(Э_Є)("") вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 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