0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 18
1

Разработать алгоритм численного решения СЛАУ методом верхней релаксации

10.05.2011, 22:05. Показов 4516. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста курсач горит (
Разработать алгоритм численного решения cистема линейных алгебраических уравнений методом верхней релаксации
кто чем сможет помогите ..............
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2011, 22:05
Ответы с готовыми решениями:

Разработать программу для решения СЛАУ методом Гаусса.
Разработать программу для решения СЛАУ методом Гаусса. вот заданный массив...

Решение слау методом релаксации
Доброго времени суток. В качестве исходных данных имеются слау большой размерности (koeff__100.7z)...

Алгоритм написания для решения СЛАУ методом простых итераций
Прошу помощи в написании программы для решения СЛАУ методом итераций. Нет, я не прошу писать код за...

Реализация численного метода решения СЛАУ
Помогите разработать ПО для реализации численного метода простой итерации решения СЛАУ.

2
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
11.05.2011, 04:57 2
Лучший ответ Сообщение было отмечено xs1ve как решение

Решение

вот вам обычный Гаусс и идите с миром...
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
#include <iostream>
#include <iomanip>
 
void Gauss(double **A, double *B, unsigned dim)
{
    for (unsigned k = 0; k < dim; ++k)
    {
        if (A[k][k] == 0.0)
        {
            for (unsigned i = k + 1; i < dim; ++i)
            {
                if (A[i][k] != 0.0)
                {
                    for (unsigned j = 0; j < dim; ++j)
        {
            double tmp = A[i][j];
            A[i][j] = A[k][j];
            A[k][j] = tmp;
        }
        double tmp = B[i];
        B[i] = B[k];  
        B[k] = tmp;
                   break;
                }
            }
        }
 
        double div = A[k][k];
 
        for (unsigned j = 0; j < dim; ++j)
            A[k][j] /= div;
 
        B[k] /= div;
 
        for (unsigned i = k + 1; i < dim; ++i)
        {
            double multi = A[i][k];
 
            for (unsigned j = 0; j < dim; ++j)
                A[i][j] -= multi * A[k][j];
 
            B[i] -= multi * B[k];
        }
    }
 
    for (unsigned k = dim - 1; k > 0; --k)
    {
        for (unsigned i = k - 1; i + 1 > 0; --i)
        {
            double multi = A[i][k];
 
            for (unsigned j = 0; j < dim; ++j)
                A[i][j] -= multi * A[k][j];
 
            B[i] -= multi * B[k];
        }
    }
}
 
int main()
{
    double *A[5];
    double B[5] = {22.0, 14.0, 456.0, 0.0, 5.0};
 
    for (int i = 0; i < 5; ++i)
        A[i] = new double [5];
 
    A[0][0] = 2;    A[0][1] = 0;    A[0][2] = 0;    A[0][3] = -12;  A[0][4] = 3;
    A[1][0] = 0;    A[1][1] = 2;    A[1][2] = 0;    A[1][3] = 3;    A[1][4] = 2;
    A[2][0] = 0;    A[2][1] = 0;    A[2][2] = 38;   A[2][3] = 5;    A[2][4] = 7;
    A[3][0] = -12;  A[3][1] = 13;   A[3][2] = 5;    A[3][3] = 0;    A[3][4] = 0;
    A[4][0] = 3;[4][1] = 2; A   [4][2] = 7;     A[4][3] = 0;    A[4][4] = 0;
 
    Gauss(A, B, 5);
 
    std::cout << "X = {"
              << std::setprecision(5) << B[0] << '\n'
              << std::setprecision(5) << B[1] << '\n'
              << std::setprecision(5) << B[2] << '\n'
              << std::setprecision(5) << B[3] << '\n'
              << std::setprecision(5) << B[4] 
              << "}" << std::endl;
    for (int i = 0; i < 5; ++i)
        delete [] A[i];
    std::cin.get();
 
    return 0;
}
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 18
04.05.2014, 18:53  [ТС] 3
Ребя вот тут можно найти: Решение СЛАУ методом верхней релаксации
0
04.05.2014, 18:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2014, 18:53
Помогаю со студенческими работами здесь

Разработать схему алгоритма для решения задачи численного интегрирования тремя методами
Разработать схему алгоритма для решения задачи численного интегрирования с использованием метода...

Решения СЛАУ методом Гаусса по шагу
Добрый день! Очередной раз прошу советов! Имеется СЛАУ, которое требуется решить методом Гаусса...

Решения СЛАУ методом Гаусса за главным элементом
Нужна консольная программа, которая решает систему трех линейных уравнений данным методом.

Написание программы для решения СЛАУ методом Зейделя
#include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;cmath&gt; #include &lt;conio.h&gt;...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru