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

Как рассчитать невязку в программе?? - C++

Восстановить пароль Регистрация
 
SINI
0 / 0 / 0
Регистрация: 22.09.2010
Сообщений: 11
14.04.2011, 13:31     Как рассчитать невязку в программе?? #1
#include <iostream.h>
#include <math.h>
#include <conio.h>
int sign(double x)
{
if (x < 0) return -1;
else return 1;
}

void main()
{
double dd = -2;
double q = -3.23;
const int n = 5;

double a[n][n] = {
{q, 1, 0, 0, 0},
{1, -2, 1, 0, 0},
{0, 1, -2, 1, 0},
{0, 0, 1, -2, 1},
{0, 0, 0, 1, q}
};
double b[n] = {0, dd, dd, dd, 0};
double x[n];

int d[n];
double delta, s[n][n];

for (int k = 1; k <= n; k++)
{
delta = a[k - 1][k - 1];
if (k != 1)
for (int i = 1; i <= k - 1; i++)
delta -= d[i - 1]*s[i - 1][k - 1]*s[i - 1][k - 1];

d[k - 1] = sign(delta);
s[k - 1][k - 1] = sqrt(fabs(delta));

for (int j = k + 1; j <= n; j++)
{
delta = a[k - 1][j - 1];
if (k != 1)
for (int i = 1; i <= k - 1; i++)
delta -= d[i - 1]*s[i - 1][k - 1]*s[i - 1][j - 1];

s[k - 1][j - 1] = delta/(s[k - 1][k - 1]*d[k - 1]);
}
}

double y[n];
y[0] = b[0]/(s[0][0]*d[0]);

for (int i = 2; i <= n; i++)
{
delta = b[i - 1];
for (int k = 1; k <= i - 1; k++)
delta -= d[k - 1]*y[k - 1]*s[k - 1][i - 1];
y[i - 1] = delta/(s[i - 1][i - 1]*d[i - 1]);
}

x[n - 1] = y[n - 1]/s[n - 1][n - 1];
for (i = n - 1; i >= 1; i--)
{
delta = y[i - 1];
for (int k = i + 1; k <= n; k++)
delta -= x[k - 1]*s[i - 1][k - 1];
x[i - 1] = delta/s[i - 1][i - 1];
}

for (k = 0; k < n; k++) cout << " " << x[k];
cout << endl;

return;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2011, 13:31     Как рассчитать невязку в программе??
Посмотрите здесь:

Как убрать курсор в программе. C++
Как сделать меню в программе? C++
C++ Как задать паузу в программе в VC++ ?
Как на VC ++ в консольной программе узнать ... C++
Как исправить ошибку в программе C++
как очистить экран в программе? C++
C++ Как в программе подключить справку?
C++ Как подключить подпрограмму к программе?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.04.2011, 13:36     Как рассчитать невязку в программе?? #2
Само понятие невязки существует толкьо в численных методах, а каждая рализация каждого такого метода решает какую то задачу. Вот эту задачу в студию.
SINI
0 / 0 / 0
Регистрация: 22.09.2010
Сообщений: 11
14.04.2011, 13:42  [ТС]     Как рассчитать невязку в программе?? #3
http://library.bsuir.by/online/showp...p?PageID=77420
страница 24 3 вариант???
мне надо рассчитать невязку!!!

Добавлено через 3 минуты
Синицын Навроцкий
Yandex
Объявления
14.04.2011, 13:42     Как рассчитать невязку в программе??
Ответ Создать тему
Опции темы

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