Практикум по решению задач на ЭВМ. Тарова И.Н - 77 стр.

UptoLike

Практикум по решению задач на ЭВМ
5) Дано действительное положительное число
ε
. Методом итераций вы-
числить с точностью
ε
корень уравнения F(x)=0:
а)
);0(,01
2
sin
=
x
x
б)
);11.0(,0142
3
=+ xx
в)
г)
);95.0(,0212
3
=+ xx
);32.4(,8ln85 =
x
x
д)
).42.9(,1000
3
=+ xx
Интерполирование функций
6) Заданы узлы
n
x
x
x
,...,,
10
и значения функции )(
x
f
в узлах:
n
f
f
f
,...,,
10
.
Построить интерполяционный многочлен Лагранжа
)(
x
n
α
.
=
=
n
k
kk
n
xfxCx
0
)()()(
α
, где
=
kj
jk
kj
j
k
xx
xx
xC
)(
)(
)(
program polinom(input,output);
uses CRT;
const n=3;
var
j,k:integer;
x1,p1,p2,L:real;
x,f,c:array[0..n] of real;
begin
clrscr;
writeln('введите узлы интерполяции x0,x1,...,xn');
for k:=0 to n do
read (x[k]);
writeln('введите значения функции f(x) в узлах точек x[k]');
for k:=0 to n do
read (f[k]);
writeln('введите значения переменной x');
readln(x1); {вычисление коэффициентов Ck(x), k=0,1,...,n}
for k:=0 to n do
begin
p1:=1; p2:=1;
for j:=0 to n do
if j<>k then
begin
p1:=p1*(x1-x[j]);
p2:=p2*(x[k]-x[j]);
end;
c[k]:=p1/p2;
end;
77
                                        Практикум по решению задач на ЭВМ


5) Дано действительное положительное число ε. Методом итераций вы-
числить с точностью ε корень уравнения F(x)=0:
а) x − sin x − 1 = 0, (0); б) 2 x 3 + 4 x − 1 = 0, (0.11);
           2
в) x + 12 x − 2 = 0, (0.95); г)
     3
                                          5x − 8 ln x = 8, (4.32);
д) x3 + x = 1000, (9.42).

                          Интерполирование функций
6) Заданы узлы x0 , x1,..., xn и значения функции f (x) в узлах: f 0 , f1,..., f n .
Построить интерполяционный многочлен Лагранжа α n (x) .
                 n                    , где               ∏(x − x j )
   α n ( x) =   ∑    C ( x) f ( x )
                       k        k             Ck ( x) =
                                                          j≠k
                k =0                                      ∏ (xk − x j )
                                                          j≠k



   program polinom(input,output);
   uses CRT;
   const n=3;
   var
    j,k:integer;
    x1,p1,p2,L:real;
    x,f,c:array[0..n] of real;
     begin
      clrscr;
      writeln('введите узлы интерполяции x0,x1,...,xn');
       for k:=0 to n do
       read (x[k]);
      writeln('введите значения функции f(x) в узлах точек x[k]');
       for k:=0 to n do
       read (f[k]);
      writeln('введите значения переменной x');
       readln(x1); {вычисление коэффициентов Ck(x), k=0,1,...,n}
       for k:=0 to n do
        begin
         p1:=1; p2:=1;
          for j:=0 to n do
           if j<>k then
            begin
             p1:=p1*(x1-x[j]);
             p2:=p2*(x[k]-x[j]);
            end;
          c[k]:=p1/p2;
         end;

                                                                          77