Форум программистов, компьютерный форум CyberForum.ru

Метод Ньютона в решении СНАУ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массивы http://www.cyberforum.ru/cpp-beginners/thread257065.html
задачи на действие с массивами 1)Удаление элемента массива 2)Среднее значение элементов массива 3)Поиск максимального и минимального элемента массива 4)заполнения массивами случайными числами в диопазоне от 100 до 500 5)Сумма (произведение)вектора 6)заполнение массива с клавиатуры
C++ Вывести вертикальную гистограмму длин слов введенного текста Вывести вертикальную гистограмму длин слов введенного текста http://www.cyberforum.ru/cpp-beginners/thread257059.html
C++ Построить светящийся разными цветами треугольник
построить,светящийся разными цветами треугольник
В данной квадратной матрице порядка 17 указать индексы всех элементов с наименьшим значением C++
В данной квадратной матрице порядка 17 указать индексы всех элементов с наименьшим значением
C++ Даны действительные числа а1, а2, … , а24 http://www.cyberforum.ru/cpp-beginners/thread257046.html
2)Даны действительные числа а1, а2, … , а24. Получить последовательность b1, b2, … , b10, где b1= a1+a2+a3+...+a24 b2= a1^2+a2^2+....+a24^2 ..... a10= a1^10+a2^10+...+a24^10 использовать вложенные циклы ^^
C++ как решеть масив в С++ как переписать отрицательные элементы массива S(12) в массив P? и в двумерном массиве A(n, m) расположить под главной диагональю единицы? кто знает помогите начинаещему програмисту! подробнее

Показать сообщение отдельно
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
14.03.2011, 17:25  [ТС]     Метод Ньютона в решении СНАУ
Вот нашел пример в нете, вроде то что надо.
Знатоки, подскажите правильный ли это код решения систем нелинейных уравнений?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream.h>
#include <math.h>
double Nuton(double*p,int n,double*x,double X)
{
double s=p[n-1];
for(int i=n-2;i>=0;i--) s=p[i]+(X-x[i])*s;
return s;
}
void Nuton1(double*x,double*y,int n,double*p)
{
for(int j=0;j<n-1;j++) {
p[j]=(y[j+1]-y[j])/(x[j+1]-x[j]);
// cout<<p[j]<<"\t";
}
// cout<<"\n";
int m=n-1;
int l=2;
int k;
for(int i=n-2;i>=1;i--)
{
k=0;
for(j=1;j<=i;j++)
{
p[m]=(p[m-i]-p[m-i-1])/(x[k+l]-x[k]);
// cout<<p[m]<<"\t";
m++;
k++;
}
// cout<<"\n";
l++;
}
j=0;
for(i=1;i<n;i++)
{
y[i]=p[j];
j=j+(n-i);
}
 
}
void main()
{
int const n=5,N=(n-1)*n/2;
double x[]={1,2,3,4,5};
double y[n];
for(int i=0; i<n; i++) y[i]=1+2*x[i]+3*pow(x[i],2)+4*pow(x[i],3)+5*pow(x[i],4);
double *p=new double[N];
Nuton1(x,y,n,p);
//for (i=0;i<n;i++) cout<<y[i]<<'\t';
double z=1.5;
cout<<Nuton(y,n,x,z)<<'\t'<<1+2*z+3*pow(z,2)+4*pow(z,3)+5*pow(z,4)<<'\n';
 
}
Добавлено через 7 минут
НИкто не подскажет правильный ли код?

Добавлено через 8 минут
И еще. Правда ли то, что решение СНАУ методом ньютона, это тотже итерац метод касательных?

Добавлено через 5 минут
Помогите хелп....

Добавлено через 10 минут
РЕбят, ну помогите. Вообще горю. (
 
Текущее время: 21:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru