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

Решение системы линейных уравнений - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.81
Марк86
3 / 3 / 0
Регистрация: 18.11.2011
Сообщений: 8
18.11.2011, 15:20     Решение системы линейных уравнений #1
Помогите решить на Си
Миниатюры
Решение системы линейных уравнений  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2011, 15:20     Решение системы линейных уравнений
Посмотрите здесь:

Найти решение системы линейных уравнений C++
Найти решение системы линейных уравнений C++
C++ Решение системы линейных уравнений с помощью обратной матрицы
C++ Решение системы линейных уравнений.
Найти решение системы линейных уравнений C++
Решение системы линейных алгебраических уравнений C++
C++ Решение системы линейных уравнений методом Гаусса
C++ Решение системы линейных уравнений матричным методом
C++ Решение системы линейных уравнений
C++ Численное решение системы линейных уравнений
Решение системы линейных уравнений C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mdt::Vladimir
7 / 7 / 0
Регистрация: 23.09.2011
Сообщений: 32
18.11.2011, 19:17     Решение системы линейных уравнений #2
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
void stdsolve(double **matrix, double *res, int size)
{
    int i,j,k;
    //прямой ход
    for (i=0; i<size; i++)
    {
        double div1 = 1.0 / matrix[i][i];
        matrix[i][i] = 1.0;
        for (j=i+1; j<=size; j++)
            matrix[i][j] *= div1;
        for (j=i+1; j<size; j++)
        {
            double mul = matrix[j][i];
            for (k=i+1; k<=size; k++)
            {
                matrix[j][k] -= matrix[i][k] * mul;
            }
        }
    }
    //обратный ход
    for (i=size-1; i>=0; i--)
    {
        res[i] = matrix[i][size];
        for (j=0; j<i; j++)
            matrix[j][size] -= matrix[j][i] * res[i];
    }
}
 
int main()
{
    double a[] = {0.06, 0.92, 0.03, -0.82, 0.99, 0.01, 0.07, 0.66, 1.01, 0.02, 0.99, 0.98};
    double *A[3] = {&a[0], &a[4], &a[8]};
    double res[3];
    stdsolve(A, res, 3); //результат будет в res
}
Просто как раз этим занимаюсь в данный момент )) Правда может немного нестандартная реализация
Yandex
Объявления
18.11.2011, 19:17     Решение системы линейных уравнений
Ответ Создать тему
Опции темы

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