Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора - C (СИ) (73328)
Формулировка задачи:
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от значения х_нач до х_кон с шагом dx с точностью Эбсилан. Таблицу снабдить заголовком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда.
Формула здесь:
[404]
Программа на Паскале:
CONST Eps=0.0001; VAR Xbeg,Xfin,DX,SUM,X:REAL; N:WORD; Nx,i:INTEGER; PROCEDURE SUMS(Xs:REAL; Var S:REAL; Var Ns:WORD); VAR a:REAL; Begin a:=1; S:=1; Ns:=0; Repeat Inc(Ns); a:=-a*SQR(Xs)/Ns; S:=S+a; Until Abs(a)<Eps; End; BEGIN Write('Xbeg= '); ReadLn(Xbeg); Write('Xfin= '); ReadLn(Xfin); Write('DX= '); ReadLn(DX); WriteLn; WriteLn(' Results of calculation:'); WriteLn(' X SUM N Exp(-Sqr(X))'); WriteLn; Nx:=ROUND((Xfin-Xbeg)/DX); X:=Xbeg; For i:=0 to Nx do begin X:=DX*i; SUMS(X,SUM,N); WriteLn(X:8:5,' ',SUM:7:5,' ',N:3,' ',Exp(-SQR(X)):7:5); end; ReadLn; END.
Решение задачи: «Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора»
textual
Листинг программы
#include <math.h> #include <stdio.h> #include <conio.h> #define EPS 0.0001 float Xbeg, Xfin, DX, SUM, X; unsigned int N; int Nx, i; void SUMS(float Xs, float *S, unsigned int *Ns) { float a; a = 1; *S = 1; *Ns = 0; do { (*Ns)++; a = -a * sqrt(Xs) / *Ns; *S = *S + a; } while (fabs(a) >= EPS); } void main(int argc, char *argv[]) { printf("Xbeg= "); scanf("%f",&Xbeg); printf("Xfin= "); scanf("%f",&Xfin); printf("DX= "); scanf("%f",&DX); printf("\n"); printf(" Results of calculation:\n"); printf(" X SUM N Exp(-Sqr(X))\n"); printf("\n"); // Nx = round((Xfin - Xbeg) / DX); Nx = (Xfin - Xbeg) / DX; X = Xbeg; for (i = 0; i <= Nx; i++) { X = DX * i; SUMS(X,&SUM,&N); printf("%8.5f %7.5f %3d %7.5f\n",X,SUM,N,exp(-sqrt(X))); } getch(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д