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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2011, 23:05   #1
forever042
 
Регистрация: 15.12.2011
Сообщений: 5
По умолчанию расчитать точки с некоторым интервалом arccos(sin(x^3/2))(C#)

Сделал код для фунции arccos(x)+cos(x)+100500
Я не понимаю, как изменить его так, чтобы посчитать значения функции arccos(sin(x^3/2))

Вот исходный код
Код:
//our function arccosx+cosx+100500
#include <stdlib.h>
#include<stdio.h>
#include "function.h"

using namespace std;

int main(int argc, char* argv[])
{
 if(argc<4)
 {
 printf("usage:kr3 <begin><end><step>\n");
 }
 float begin=(float)atof(argv[1]);
 float end= (float)atof(argv[2]);
 float step= (float)atof(argv[3]);
 if(begin>end) {
 printf("begin should be less then end");
 return 0;
 }
 printf(" x | F(x) \n"); 
 printf("--------|--------\n");

 for(float x=begin;x<end;x+=step){
 //TODO: begin<end
 Function *func=new Sum(new Acos(),new Sum( new Ccos(), new Constant(100500)));
 printf("%f|%f\n",x,func->value(x)); 
 } 

 return 0;
}
function.cpp
Код:
#include <math.h>
#include "function.h"
Sum::Sum(Function*a,Function*b){
 first=a;
 second=b;
}
float Sum::value(float x){
 return first->value(x)+second->value(x);
}
float Acos::value(float x){
 return acos(x);
}
float Ccos::value(float x){
 return cos(x);
}
Constant::Constant(float val){
 _value=val;
}
float Constant::value(float x)
{
 return _value;
}
и function.h
Код:
class Function{
public:
 virtual float value(float x)=0;
};
class Sum:public Function
{
 Function *first;
 Function *second;
public:
 Sum(Function* a,Function * b);
 float value(float x);
};
class Ccos:public Function
{
public:

 float value(float x);
};
class Acos:public Function
{
public:

 float value(float x);
};
class Constant:public Function
{
 float _value;
public: 
 Constant(float val);
 float value(float x);
};
P.S. здесь используется раздельная компиляция, осуществляется при помощи build.cmd
Код:
IF NOT EXIST bin mkdir bin 
bcc32 -nbin -c src\program.cpp 
bcc32 -nbin -c src\function.cpp
bcc32 -nbin bin\program.obj bin\function.obj
move bin\program.exe bin\r3.exe
Буду очень благодарен за помощь
forever042 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисление суммы:sinx+sin(sinx)+sin(sin(sinx)) ..+..sin(..(sinx)) на дельфи Nach Помощь студентам 3 16.11.2011 10:05
Функция y=2cos(3пx)sin(пx)+(sin(3пx)/x) ofenod Microsoft Office Excel 5 07.04.2011 03:22
Написать функцию arccos x и для заданных вещественных чисел x и y подсчитать (x/1+|x|)+arccos y/sqr(y)-1. "Chika bomb" Паскаль, Turbo Pascal, PascalABC.NET 3 14.12.2010 16:03
Запрос на выборку значений с некоторым интервалом времени. call_me_Frank SQL, базы данных 7 13.05.2010 17:11