Re: Чисельні методи
Додано:
15 вересня 2011, 19:35
Cherokee
Тут 1-7 варіанти завдань, а також правильно зроблена лабораторна робота №_1!!!!
Re: Чисельні методи
Додано:
15 вересня 2011, 20:55
Василь
А другий рівень складності хтось робив???
Re: Чисельні методи
Додано:
23 жовтня 2011, 17:55
Василь
Хто робив ЛР №1 Варіант 18 Многочлени Чебишова [Волков, с. 38-42]? Дайте прогу та звіт ))
ВІКІ РОС
http://ru.wikipedia.org/wiki/%D0%9C%D0% ... 0%B2%D0%B0ВІКІ УКР (написано більше і зрозуміліше)
http://uk.wikipedia.org/wiki/%D0%9F%D0% ... 0%B2%D0%B0Знайшов якусь прогу на цю тему. ХЗ що воно там таке....
- Код: Виділити все
program integral;
uses crt;
const n=5;
k=-0.832498;
l=-0.374541;
z=0.0;
type mas=array[1..n] of real;
var
x,y:mas;
a,b,h,ich:real;
procedure vvod(var a,b:real;var c:mas);
var
i:integer;
t:mas;
Begin
t[1]:=k;t[2]:=l;t[3]:=z;t[4]:=l;t[5]:=k;
for i:=1 to n-1 do
c[i]:=((b+a)/2+(b-a)/2*t[i]);
for i:=n-1 to n do
c[i]:=1 - c[n+1-i];
end;
procedure form(var x:mas; var y:mas);
var
i:integer;
Begin
for i:=1 to n do
y[i]:=sin(x[i]);
end;
procedure cheb(var y:mas;var ich:real);
var
i:integer;
Begin
ich:=0;
for i:=1 to n do
ich:=ich+y[i]*h;
end;
procedure tabl;
var
i:integer;
Begin
writeln(' i t x y ');
for i:=1 to 5 do begin
writeln(' ',i:1, k:9:6, x[i]:9:6, y[i]:9:6);
end;
end;
Begin
repeat
clrscr;
writeln('Input a,b:');readln(a,b);
vvod(a,b,x);h:=(b-a)/n;
writeln('h=',h:9:6);
form(x,y);cheb(y,ich);tabl;
writeln('I=',ich:8:6);
until readkey=#27;
end.
Re: Чисельні методи
Додано:
26 жовтня 2011, 21:56
Ксюха Шаптала
Люди хто уже сдал, сделал вторую лабу по ЧМО, киньте плиз.
Горбаченко В.А.:Укажите номер варианта, ух же много там...
Re: Чисельні методи
Додано:
08 листопада 2011, 14:27
Vagrant
laba 1
#include <iostream>
#include <math.h>
using namespace std;
double func(double x)
{
return x/ log(x);
}
static double _x[11]={1.51,2.11,2.78,3.62,4.01,4.99,5.42,6.32,7.91,8.09,9.14};
double f_x[11]={3.6641,2.8258,2.718,2.8139,2.8874,3.1043,3.2069,3.4279,3.8247,3.8696,4.1308};
double _y[11][11];
void create_y()
{
for (int j=0;j<11;j++)
{
_y[0][j]=f_x[j];
}
for(int i=1; i<11;i++)
{
for (int j=0;j<(11-i);j++)
{_y[i][j]= (_y[i-1][j]-_y[i-1][j+1])/(_x[j]-_x[j+i]);
}
}
}
double Newton(double x, int n)
{
if (n!=10)
return _y[n][0]+(x-_x[n]) *Newton(x,n+1)
;
else return _y[n][0]
;
}
int main()
{
create_y();
double x=2.5;
double h=0.14;
while (x<=9.5)
{
printf ("%.03g%\t%g\t%g\n",x,func(x),Newton (x,0));
x+=h;
}
printf("%");
system("PAUSE");
return EXIT_SUCCESS;
}