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

Линеаризация функции полиномом н-ого порядка - C++

Восстановить пароль Регистрация
 
DreamForLives
0 / 0 / 0
Регистрация: 05.05.2011
Сообщений: 33
05.05.2011, 23:30     Линеаризация функции полиномом н-ого порядка #1
Мне нужно написать программу: "Линеаризация функции 2ух переменных полиномом н-ого порядка".
Но если честно, никак не могу понять как к ней подойти ...даже сам ход мыслей её написания.

п.с. пока это задание смогла написать только для полинома 2ого,3тьего порядка...но от меня всё равно требуют н-ого(
Помогите,пожалуйста)


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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include "stdafx.h"
#include "conio.h"
#include <cmath>
 
float a1,a2,a3,a4;
int const j=1;
 
float massiv[j];
 
int _tmain(int argc, _TCHAR* argv[])
{
int l,h,i=0,n1,n2,n3,n4,k1,k2,k3,k4;
printf ("vvedite kolichestvo tochek, ne menee 5 dlia x^2 i ne menee 8 dlia x^3 \n");
scanf ("%d", &h);
printf ("dannie tochki\n");
for (int l=0;l<h;l++)
{
scanf ("%f", &massiv[l]);
}   
printf ("\nintervali koefficientov\n\n"); 
printf ("a1 ot "); scanf ("%d", &n1); printf ("a1 do "); scanf ("%d", &k1);
printf ("\na2 ot "); scanf ("%d", &n2); printf ("a2 do "); scanf ("%d", &k2);
printf ("\na3 ot "); scanf ("%d", &n3); printf ("a3 do "); scanf ("%d", &k3);
printf ("\na4 ot "); scanf ("%d", &n4); printf ("a4 do "); scanf ("%d", &k4);
for (float a1=n1;a1<k1;a1++)
{
for (float a2=n2;a2<k2;a2++)
{
for (float a3=n3;a3<k3;a3++)
{
if 
(pow(massiv[i]-(a1*i*i+a2*i+a3),2)<0.1
&& 
pow(massiv[i+1]-(a1*(i+1)*(i+1)+a2*(i+1)+a3),2)<0.1  &&
pow(massiv[i+2]-(a1*(i+2)*(i+2)+a2*(i+2)+a3),2)<0.1
&&
pow(massiv[i+3]-(a1*(i+3)*(i+3)+a2*(i+3)+a3),2)<0.1
&&
pow(massiv[i+4]-(a1*(i+4)*(i+4)+a2*(i+4)+a3),2)<0.1
&&
a1>0 || a1<0)
{
printf ("\npolinom 2 stepeni a1*x*x+a2*x*a3\n\n");
printf ("a1 %f \na2 %f \na3 %f\n", a1,a2,a3);
printf ("\n");
}
if 
(pow(massiv[i]-(a1*i*i+a2*i+a3),2)<0.1
&& 
pow(massiv[i+1]-(a1*(i+1)*(i+1)+a2*(i+1)+a3),2)<0.1
&&
pow(massiv[i+2]-(a1*(i+2)*(i+2)+a2*(i+2)+a3),2)<0.1
&&
pow(massiv[i+3]-(a1*(i+3)*(i+3)+a2*(i+3)+a3),2)<0.1
&&
pow(massiv[i+4]-(a1*(i+4)*(i+4)+a2*(i+4)+a3),2)<0.1
&&
a1==0)
{
printf ("\npolinom 1 stepeni a1*x+a2\n");
printf ("a1 %f \na2 %f\n", a2,a3);
printf ("\n");
}   
for (float a4=n4;a4<k4;a4++)
{   
if 
(pow(massiv[i]-(a1*i*i*i+a2*i*i+a3*i+a4),2)<0.1
&& 
pow(massiv[i+1]-(a1*(i+1)*(i+1)*(i+1)+a2*(i+1)*(i+1 )+a3*(i+1)+a4),2)<0.1
&&
pow(massiv[i+2]-(a1*(i+2)*(i+2)*(i+2)+a2*(i+2)*(i+2 )+a3*(i+2)+a4),2)<0.1
&&
pow(massiv[i+3]-(a1*(i+3)*(i+3)*(i+3)+a2*(i+3)*(i+3 )+a3*(i+3)+a4),2)<0.1
&&
pow(massiv[i+4]-(a1*(i+4)*(i+4)*(i+4)+a2*(i+4)*(i+4 )+a3*(i+4)+a4),2)<0.1
&&
pow(massiv[i+5]-(a1*(i+5)*(i+5)*(i+5)+a2*(i+5)*(i+5 )+a3*(i+5)+a4),2)<0.1
&&
pow(massiv[i+6]-(a1*(i+6)*(i+6)*(i+6)+a2*(i+6)*(i+6 )+a3*(i+6)+a4),2)<0.1
&&
pow(massiv[i+7]-(a1*(i+7)*(i+7)*(i+7)+a2*(i+7)*(i+7 )+a3*(i+7)+a4),2)<0.1
&&
a1>0 || a1<0)
{   
printf ("\npolinom 3 stepeni a1*x*x*x+a2*x*x+a3*x+a4\n\n");
printf ("a1 %f \na2 %f \na3 %f\na4 %f \n", a1,a2,a3,a4); printf ("\n");
}
}
}
}
}   
getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2011, 23:30     Линеаризация функции полиномом н-ого порядка
Посмотрите здесь:

Определитель n-ого порядка (непорядок с рекурсией) C++
C++ Поиск k-ого наименьшего элемента
C++ Нахождение n-ого числа Фибоначчи
C++ Наибольший элемент матрици н-ого порядка в заштрихованной области
Интерполяция полиномом Лагранжа C++
Аппроксимация тригонометрическим полиномом C++
Ошибка pow:DOMAIN error в написании функции Бесселя первого рода нулевого порядка C++
Интерполяция полиномом Лагранжа C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 15:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru