Официальный сайт студ.городка НГТУ
Программирование и БД » метод симпсона... 

#1  25.06.06 10:08

метод симпсона...

у кого есть модули на C по теме? или хотябы описания алгоритмов.
Напишите...

Offline

#2  25.06.06 12:35

Re: метод симпсона...

да в инете масса этого...

Offline

#3  27.06.06 08:58

Re: метод симпсона...

Если метод симпсона по вычмату, то вот код, мы лабу делали (здесь метод симпсона и метод прямоугольников), разберешься:

#include <stdio.h>
#include <math.h>
#include <conio.h>
//#define x0 1.2
//#define xn 5.3
#define e 0.01

float func(float x);
float chorda(float x0,float xn)
{

float xp=x0-func(x0)*(xn-x0)/(func(xn)-func(x0));
if(func(xp)>-e&&func(xp)<e)
return xp;
else if(func(xp)*func(x0)<0) return chorda(x0,xp) ;
else return chorda(xp,xn);

}

float deriv(float x)
{
return (logl(2)*pow(2,x)-4*x);
}


float func(float x)
{
    return (pow(2,x)-2*x*x+1);
}

float tangent(float x1)
{
    float xp=x1-func(x1)/deriv(x1);
    if(func(xp)>-e&&func(xp)<e)
        return xp;
    else return tangent(xp);
}

/*float M_Simpson(float n)
{
    float s=0,x=x0;
    float h=(xn-x0)/n;
    for(int i=0; i<n; i++)
        if(i==0 || i==n)
            s+=func(x+i*h);
        else
        if (i%2)   
            s+=2*func(x+i*h);
        else   
            s+=4*func(x+i*h);
    s*=h/3;
    return s;   
}

float M_rect(float n)
{
    float s=0,x=x0;
    float h=(xn-x0)/n;
    for(int i=0; i<n; i++)
        if(i==0 || i==n)
            s+=func(x+i*h);
        else
            s+=2*func(x+i*h);
    s*=h/2;
    return s;   
}*/
void main()
{
/*    int n=1;

    while(M_rect(n)-M_rect(n+1)>e) n++;

    printf("rect H=%f, S=%f,N=%d\n",(xn-x0)/n,M_rect(n+1),n);
    n=2;
    while(M_Simpson(n)-M_Simpson(n+2)>e) n+=2;
    printf("Simpson H=%f,S=%f,N=%d",(xn-x0)/n,M_Simpson(n+2),n);*/
    printf("\n\n  x=%f  \n\n",chorda(0,5));
    printf("\n\n  x=%f  \n\n",tangent(2));
   
    getch();
    return ;
}

Offline

#4  27.06.06 08:59

Re: метод симпсона...

комменты убери где нада и все будет работать, мы сдали.

Offline

#5  27.06.06 09:09

Re: метод симпсона...

у меня на фтп по численным методам есть куча книг
и методы по лабам (метод Симпсона там тоже есть)

ftp://simplex.hostel.nstu.ru/Docs/%D7%E … %EE%E4%FB/

ftp://simplex.hostel.nstu.ru/Docs/NSTU/ … landovsky/

Offline

Программирование и БД » метод симпсона... 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.024 сек.
Выполнено 14 запросов.