![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 05.05.2011
Сообщений: 2
|
![]()
Мне нужно написать программу: "Линеаризация функции 2ух переменных полиномом н-ого порядка".
Но если честно, никак не могу понять как к ней подойти ...даже сам ход мыслей её написания. п.с. пока это задание смогла написать только для полинома 2ого,3тьего порядка...но от меня всё равно требуют н-ого( |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 05.05.2011
Сообщений: 2
|
![]()
#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; } |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Полиномиальная интерполяциия функции полиномом Ньютона | Igolka6662 | Помощь студентам | 2 | 24.11.2010 21:01 |
Уменьшить количество циклов с 3-х до 1-ого | voffka-blogger | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 02.05.2010 22:22 |
Удалить 7-ого Осла и вместо него поставить 6-ого | Altera | Софт | 2 | 25.10.2009 08:44 |
Помогите....с полиномом! | alisa87 | Общие вопросы C/C++ | 1 | 26.05.2009 16:13 |
Обход и линеаризация матриц (Си) | Gimi | Помощь студентам | 2 | 25.12.2008 19:08 |