Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/24: Рейтинг темы: голосов - 24, средняя оценка - 5.00
Anny2202
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 9
#1

Системы линейных уравнений методом Гаусса

16.11.2012, 12:59. Просмотров 4351. Ответов 30
Метки нет (Все метки)

Прошу помочь с составлением программы, позволяющей решать системы линейных уравнений методом Гаусса на языке C++ . Желателен наиболее элементарный, "прямоходовый" вариант программы. Заранее большое спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2012, 12:59
Ответы с готовыми решениями:

Системы линейных уравнений методом Гаусса
День(ночь, утро, вечер) добрый(-ая, -ое) вопрос про метод Гаусса, как его...

Решение системы линейных уравнений методом Гаусса
необходимо решить данную задачу в visual studio c++, если можно с...

Решение системы линейных алгебраических уравнений методом Гаусса
Решить систему n линейных алгебраических уравнений методом Гаусса. Использовать...

Найти решение системы линейных уравнений методом Гаусса с выбором главного элемента в столбце
Решить систему линейных уравнений методом Гаусса с выбором главного элемента в...

Решение линейных уравнений методом Гаусса
Доброе утро! Вы могли бы помочь мне решить вариант №29

30
LeMax24
51 / 13 / 7
Регистрация: 29.09.2012
Сообщений: 90
16.11.2012, 19:54 #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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
 
using namespace std;
 
int main()
{
    int a11, a12, a13, a21, a22, a23, a31, a32, a33, a41, a42, a43;   
        
        cout << "x1 = "; cin >> a11;
        cout << "y1 = "; cin >> a12;
        cout << "z1 = "; cin >> a13; cout << endl;
        
        cout << "x2 = "; cin >> a21;
        cout << "y2 = "; cin >> a22;
        cout << "z2 = "; cin >> a23; cout << endl;
 
        cout << "x3 = "; cin >> a31;
        cout << "y3 = "; cin >> a32;
        cout << "z3 = "; cin >> a33; cout << endl;
 
        cout << " = "; cin >> a41;
        cout << " = "; cin >> a42;
        cout << " = "; cin >> a43; cout << endl;
 
    int A1 = 0, A2 = 0, A3 = 0, A4 = 0, A5 = 0, A6 = 0, A7 = 0, A8 = 0;
 
        A1 = (a11 * a22) - (a21 * a12);
        A2 = (a11 * a23) - (a21 * a13);
        A3 = (a11 * a42) - (a21 * a41);
 
        A4 = (a11 * a32) - (a31 * a12);
        A5 = (a11 * a33) - (a31 * a13);
        A6 = (a11 * a43) - (a31 * a41);
 
        A7 = (A1 * A5) - (A4 * A2);
        A8 = (A1 * A6) - (A4 * A3);
 
    int x = 0, y = 0, z = 0, a = 0, b = 0;
 
        z = A8 / A7;
        a = A3 -(A2 * z);
        y = a / A1;
        b = a41 - ((a12 * y) + (a13 * z));
        x = b / a11;
 
        cout << endl;
        cout << "x = " << x << endl;
        cout << "y = " << y << endl;
        cout << "z = " << z << endl;
 
    system("pause");
    return 0;
}
1
Anny2202
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 9
16.11.2012, 20:37  [ТС] #3
Спасиииибо огромное просто

Добавлено через 26 минут
LeMax24, извини конечно,а можешь 3х3 сделать? а то у тебя 4х4)
0
Relaxory
0 / 0 / 0
Регистрация: 30.06.2014
Сообщений: 9
01.07.2014, 08:40 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
z = A8 / A7;
        a = A3 -(A2 * z);
        y = a / A1;
        b = a41 - ((a12 * y) + (a13 * z));
        x = b / a11;
 
        cout << endl;
        cout << "x = " << x << endl;
        cout << "y = " << y << endl;
        cout << "z = " << z << endl;
 
    system("pause");
    return 0;
}
Можно пожалуйста пояснить эти действия?
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
01.07.2014, 09:12 #5
Anny2202, это и есть для системы 3x3
0
IrineK
Заблокирован
01.07.2014, 09:15 #6
Цитата Сообщение от Anny2202 Посмотреть сообщение
а то у тебя 4х4)
3х3
a41, a42, a43 - это вектор свободных членов.
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
03.07.2015, 11:03 #7
А как проверить ,правильные ли ответы выдала программа?
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
03.07.2015, 11:05 #8
Kobi, как обычно: подставить или решить другим способом.
0
SmittWesson
211 / 184 / 21
Регистрация: 04.06.2014
Сообщений: 1,306
03.07.2015, 11:12 #9
Посмотрите в эту сторону -
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
03.07.2015, 11:22 #10
ответы не сходятся,можете подсказать тогда ,где ошибка в программе?
0
xEmpire
25 / 25 / 11
Регистрация: 07.12.2012
Сообщений: 169
Завершенные тесты: 1
03.07.2015, 15:39 #11
Kobi,
Вержбицкий - Основы численных методов;
Мэтьюз - Численные методы. Использование MATLAB.
Там есть всё что вам нужно.
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
03.07.2015, 16:05 #12
Kobi, в какой программе?
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
04.07.2015, 09:13 #13
вот в этой:

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
#include <iostream>
 
using namespace std;
 
int main()
{
    int a11, a12, a13, a21, a22, a23, a31, a32, a33, a41, a42, a43;   
        
        cout << "x1 = "; cin >> a11;
        cout << "y1 = "; cin >> a12;
        cout << "z1 = "; cin >> a13; cout << endl;
        
        cout << "x2 = "; cin >> a21;
        cout << "y2 = "; cin >> a22;
        cout << "z2 = "; cin >> a23; cout << endl;
 
        cout << "x3 = "; cin >> a31;
        cout << "y3 = "; cin >> a32;
        cout << "z3 = "; cin >> a33; cout << endl;
 
        cout << " = "; cin >> a41;
        cout << " = "; cin >> a42;
        cout << " = "; cin >> a43; cout << endl;
 
    int A1 = 0, A2 = 0, A3 = 0, A4 = 0, A5 = 0, A6 = 0, A7 = 0, A8 = 0;
 
        A1 = (a11 * a22) - (a21 * a12);
        A2 = (a11 * a23) - (a21 * a13);
        A3 = (a11 * a42) - (a21 * a41);
 
        A4 = (a11 * a32) - (a31 * a12);
        A5 = (a11 * a33) - (a31 * a13);
        A6 = (a11 * a43) - (a31 * a41);
 
        A7 = (A1 * A5) - (A4 * A2);
        A8 = (A1 * A6) - (A4 * A3);
 
    int x = 0, y = 0, z = 0, a = 0, b = 0;
 
        z = A8 / A7;
        a = A3 -(A2 * z);
        y = a / A1;
        b = a41 - ((a12 * y) + (a13 * z));
        x = b / a11;
 
        cout << endl;
        cout << "x = " << x << endl;
        cout << "y = " << y << endl;
        cout << "z = " << z << endl;
 
    system("pause");
    return 0;
}
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
04.07.2015, 11:29 #14
Kobi, что такое A1..A8?
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
04.07.2015, 11:38 #15
Если честно,я сам не могу понять,мне нужна программа которая будет решать систему уравнений методом гаусса,я нашел эту,но она выдает не правильные ответы.Ответы подходят только к первому уравнению в системе уравнений,а остальные два не сходятся.
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
04.07.2015, 11:41 #16
Kobi, ладно,забудьте об этой программе.Вы хотите получить готовое решение или разобраться и сделать свое?
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
04.07.2015, 11:45 #17
ну можно готовую программу,ну и чтобы можно было разобраться в ней)
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
04.07.2015, 11:47 #18
Kobi, лучший способ разобраться,это сделать самому,тем более метод не из сложных.Давайте начнем.Что вы предлагаете сделать в первую очередь?
0
Kobi
0 / 0 / 0
Регистрация: 03.07.2015
Сообщений: 11
04.07.2015, 11:50 #19
нужно,дать имена элементам?
0
S_el
2150 / 1668 / 353
Регистрация: 15.12.2013
Сообщений: 6,629
04.07.2015, 11:53 #20
Kobi, зачем ?Напишите в виде алгоритма,как вы представляете себе решение задачи.

P.S. Выделяйте ник спец. тегом,тогда придет уведомление.
0
04.07.2015, 11:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2015, 11:53

Решение линейных уравнений методом Гаусса
Всем привет. Поставлена задача создать программу, способную решать линейные...

Решение систем линейных уравнений методом Гаусса
Такая вот проблема вышла, не работает один случай и никак не могу найти - в чем...

Методом Гаусса решить систему n линейных алгебраических уравнений
Помогите пожалуйста написать на с++ методом Гаусса решить систему n линейных...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru