Ввод данных с клавиатуры - Turbo Pascal (33533)

Формулировка задачи:

ребят помогите пожайлуста у меня есть программа интерполяции табличных значений ньютона но мне нужно чтоб точки которые интерполируються вводились с клавиатуры не рандомом не через константу а тупо с клавиатуры))
 program task12;
 
 uses
 crt;
 
 type
 massiv = array[1..10] of real;
 
 function nuton(X, Y: massiv; n: integer; t: real): real;
 var dy:array[1..10]of real;
 ddy:array[1..10] of real;
 dddy:array[1..10] of real;
 i:integer;
 begin
 
 for i:=1 to n-1 do
 dy[i]:=(Y[i+1]-Y[i])/(X[i+1]-X[i]);
 
 for i:=1 to n-2 do
 ddy[i]:=(dy[i+1]-dy[i])/(X[i+2]-X[i]);
 
 for i:=1 to n-3 do 
 dddy[i]:=(ddy[i+1]-ddy[i])/(X[i+3]-X[i]);
 
 nuton:=Y[1]+dy[1]*(t-X[1])+ddy[1]*(t-X[1])*(t-X[2])+dddy[1]*(t-X[1])*(t-X[2])*(t-X[3]);
 end;
 
 var
 X, Y: massiv;
 x0, h: real;
 n: integer;
 i: integer;
 f:text;
 begin
 assign(f,'result.txt');
 rewrite(f);
 n := 5;
 x0 := 1;
 h := 1 / n;
 for i := 1 to n do 
 begin
 X[i] := x0;
 Y[i] := sin(x0);
 x0 := x0 + h;
 end;
 writeln('Nuton=',nuton(X,Y,n,1.3));
 writeln('sin=',sin(1.3));
 writeln('pogreshn=',(sin(1.3)-nuton(X,Y,n,1.3))/sin(1.3)*100);
 writeln(f,'Nuton=',nuton(X,Y,n,1.3));
 writeln(f,'sin=',sin(1.3));
 writeln(f,'pogreshn=',(sin(1.3)-nuton(X,Y,n,1.3))/sin(1.3)*100);
 close(f);
 end.

Код к задаче: «Ввод данных с клавиатуры - Turbo Pascal (33533)»

textual
program task12;
 
 uses
 crt;
 
 type
 massiv = array[1..10] of real;
 
 function nuton(X, Y: massiv; n: integer; t: real): real;
 var dy:array[1..10]of real;
 ddy:array[1..10] of real;
 dddy:array[1..10] of real;
 i:integer;
 begin
 
 for i:=1 to n-1 do
 dy[i]:=(Y[i+1]-Y[i])/(X[i+1]-X[i]);
 
 for i:=1 to n-2 do
 ddy[i]:=(dy[i+1]-dy[i])/(X[i+2]-X[i]);
 
 for i:=1 to n-3 do
 dddy[i]:=(ddy[i+1]-ddy[i])/(X[i+3]-X[i]);
 
 nuton:=Y[1]+dy[1]*(t-X[1])+ddy[1]*(t-X[1])*(t-X[2])+dddy[1]*(t-X[1])*(t-X[2])*(t-X[3]);
 end;
 
 var
 X, Y: massiv;
 x0, h: real;
 n: integer;
 i: integer;
 f:text;
 begin
 assign(f,'result.txt');
 rewrite(f);
 n := 5;
 x0 := 1;
 h := 1 / n;
 for i := 1 to n do read(X[i]);
 for i := 1 to n do begin
 Y[i] := sin(x0);
 write(y[i]:0:4,' ');
 x0 := x0 + h;
 end;
 writeln;
 writeln('Nuton=',nuton(X,Y,n,1.3));
 writeln('sin=',sin(1.3));
 writeln('pogreshn=',(sin(1.3)-nuton(X,Y,n,1.3))/sin(1.3)*100);
 writeln(f,'Nuton=',nuton(X,Y,n,1.3));
 writeln(f,'sin=',sin(1.3));
 writeln(f,'pogreshn=',(sin(1.3)-nuton(X,Y,n,1.3))/sin(1.3)*100);
 close(f);
 end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

5   голосов, оценка 4.000 из 5


СДЕЛАЙТЕ РЕПОСТ