.


:




:

































 

 

 

 


Interpol_drobju(n, x, y, q, b, d);




printf("\nKoefficienty interpol. cepnoy drobi:\n");

for (i=0; i<n; i++)

printf("%10.3f", q[i]);

printf("\n\n");

printf("\nKoefficienty chislit. interpol. drobi:\n");

for (i=0; i<n; i++)

printf("%10.3f", b[i]);

printf("\n\n");

printf("\nKoefficienty znamenat. interpol. drobi:\n");

for (i=0; i<n; i++)

printf("%10.3f", d[i]);

printf("\n\n");

c=getch();

return 0;}

:

, :

3 +

:

(-6 x + 2x2) / (-2 x + x2)


:

1. :

void approks_polinomom(int m, int n, float x[m], float y[m], float q[n+1], float *s0);

2. m ,

3. n (n<=m-1),

4. :

float x[m], y[m]; //

//

float q[n+1]; //

//

//

5. x [m], y[m],

6. :

approks_polinomom(m, n, x, y, q, &s0);

7. ( ) q[n+1] s0.

: , :

x   0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
y 2.5 0.75 -1.15 -2.75 -3.85 -4.15 -3.55 -2.25 -0.15 2.15 4.55

 

m=11, n=3.

:

#include <stdio.h>

#include <math.h>

#include <conio.h>

void approks_polinomom(int m, int n, float x[m], float y[m], float q[n+1], float *s0);

int main(int argc, char **argv)

{

int m; //

int n; // , n<m

float s0; //

int i; //

Char c0;

printf("\nUzlov approksimacii m= ");

scanf("%d", &m);

printf("\nSteprn approks. polinoma n (n<m)= ");

scanf("%d", &n);

float x[m], y[m]; //

float q[n+1]; //

//

//

printf("\nVvedite vector argumenta (%d znacheniy):\n", m);

for (i=0; i<m; i++)

scanf("%f", &x[i]);

printf("\n");

printf("\nVvedite vector funkcii (%d znacheniy):\n", m);

for (i=0; i<m; i++)

scanf("%f", &y[i]);

printf("\n");

printf("\nApproksimacija polinomom\n");

approks_polinomom(m, n, x, y, q, &s0);

printf("\nKoefficienty approks. polinoma po vozrast. stepeney:\n");

for (i=0; i<n+1; i++)

printf("%10.5f", q[i]);

printf("\n");

printf("\nSrednekvadr. pogreshn. approksimacii: %e\n", s0);

c0=getch();

Return 0;

}

:

, :

2,848 13,529x + 6,528x2 + 0,374x3


:

1. :

void approks_summoj_funkc(int m, int n, float x[m], float y[m], float q[n+1], float *s0);

2. m ,

3. n (n<=m-1),

4. :

float x[m], y[m]; //

//

float q[n+1]; //

//

5. :

void slagaemye(float x, float f[])

//

//

//

// f[n+1]:

// n - ;

// 1.0:

// f[0]=1.0;

// - - x,

// :

// f[0]=1.0; - - !

// f[1]=sin(x);

// f[2]=exp(2.0*x);

// ..

//

{

}

6. x [m], y[m],

7. :

approks_summoj_funkc(m, n, x, y, q, &s0)

8. ( ) q[n+1] s0.

: , :

x   0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
y 2.5 0.75 -1.15 -2.75 -3.85 -4.15 -3.55 -2.25 -0.15 2.15 4.55

:

f(x)=q0 + q1sin(x) + q2cos(x) + q3sin(2x) + q4cos(2x)

m=11, n=4 ( ).

:

#include <stdio.h>

#include <math.h>

#include <conio.h>

void approks_summoj_funkc(int m, int n, float x[m], float y[m], float q[n+1], float *s0);

int main(int argc, char **argv)

{

int m; //

int n; //
//

float s0; //

int i; //

Char c0;

printf("\nUzlov approksimacii m= ");

scanf("%d", &m);

printf("\nKolichestvo approks. funkc. n (n<m) = ");

scanf("%d", &n);

float x[m], y[m]; //

float q[n+1]; //

//

printf("\nVvedite vector argumenta (%d znacheniy):\n", m);

for (i=0; i<m; i++)

scanf("%f", &x[i]);

printf("\n");

printf("\nVvedite vector funkcii (%d znacheniy):\n", m);

for (i=0; i<m; i++)

scanf("%f", &y[i]);

printf("\n");

printf("\nApproksimacija summoj funkcij\n");

approks_summoj_funkc(m, n, x, y, q, &s0);

printf("\nKoefficienty pri approks. funkcijah:\n");

for (i=0; i<n+1; i++)

printf("%10.5f", q[i]);

printf("\n");

printf("\nSrednekvadr. pogreshn. approksimacii: %e\n", s0);

c0=getch();

Return 0;

}

:

void slagaemye(float x, float f[])

//

//

//

// f[n+1]:

// n - ;

// 1.0: // f[0]=1.0;

// - -

// x,

// :

// f[0]=1.0; - - !

// f[1]=sin(x);

// f[2]=exp(2.0*x);

// ..

//

{

f[0]=1.0;

f[1]=sin(x);

f[2]=cos(x);

f[3]=sin(2.0*x);

f[4]=cos(2.0*x);

}

:

, :

f(x)=0,687 + 1,763 sin(x) 1,145 cos(x) 4,906 sin(2x) + 2,964cos(2x)

 

 

, ,

:

1. :





:


: 2017-03-11; !; : 326 |


:

:

, ,
==> ...

1463 - | 1381 -


© 2015-2024 lektsii.org - -

: 0.028 .