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

Решение уравнений методом Гаусса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обмен пар чисел в одномерном массиве http://www.cyberforum.ru/cpp-beginners/thread1013101.html
Решить задачу: Дан массив. Нужно поменять местами значения во всех парах. Пара – два соседних элемента, такие, что меньший номер имеет четное количество элементов. Или, иначе, два первых элемента –...
C++ Зануление элементов матрицы ниже главной диагонали Здравствуйте. Мне нужно занулить матрицу ниже главной диагонали. Я написал нижеприведённый код, но он почему-то не работает. На указанной в коде строке на шаге, когда i=0, j=1, k=1, появляется... http://www.cyberforum.ru/cpp-beginners/thread1013080.html
Развернуть стек C++
Развернуть стек, т.е. сделать "дно" стека вершиной, а вершину - "дном". Стек должен быть на основе массива.
Строки. Ошибка C++
Задание: Написать программу удаления букв r из введенной строки. Мой код: #include<iostream.h> main() { char str,str1; int j=0; cout<<"Vvedite stroku: "; cin>>str;
C++ Как сделать сортировку http://www.cyberforum.ru/cpp-beginners/thread1013072.html
#include<iostream> using namespace std; myfunc(); int main() { const int n = 11;
C++ Программа для рекурсивного нахождения такого числа на отрезке, у которого сумма делителей максимальна #include <iostream> int sd(int n, int d = 1) { if (n==0) { return 0; } else подробнее

Показать сообщение отдельно
Blueeyer
12 / 12 / 1
Регистрация: 09.10.2013
Сообщений: 222

Решение уравнений методом Гаусса - C++

20.11.2013, 14:19. Просмотров 873. Ответов 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
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    float **matrix=NULL;
    int n, m;
    cout<<"Введите кол-во строк: "<<endl;
    cin>>n;
    cout<<"Введите кол-во неизвестных в строке: "<<endl; 
    cin>>m;
 
    matrix=new float *[n];
    for (int i=0; i<n; i++)
   matrix[i]=new float [m+1];
    for (int v=0; v<n; v++){
        for (int j=0; j<m; j++){
            cout<<"Строка #"<<v+1<<" ----- Неизвестная #"<<j+1<<endl;
            cin>>matrix[v][j];
        }
        cout<<"Чему это равно? ("<<v+1<<" строка)"<<endl;
        cin>>matrix[v][m];
    }
    cout<<endl;
    for (int k = 0; k < n; k++){
        for (int l = 0; l <= m; l++){          //Для вывода матрицы 
            cout<<matrix[k][l]<<" ";
        }
        cout<<endl;    
    } 
    system("PAUSE");
    return 0;
}

Хочу реализовать что-то такое:
Допустим, у нас 3 строки и 3 неизвестных (тоесть 4 столбика выйдет (3 неизвестных + 1 под ответ)).

К примеру:
4 3 6 | 9
3 2 5 | 7
2 9 4 | 12

Хочу реализовать следующее:
Берется первое число первой строчки ( в данном случае 4), затем оно делится на всю эту строчку, так, чтоб первая цифра была 1. Затем эта строчка вычитается из всех остальных строчек, тоесть в итоге первый столбик в данном случае будет выглядеть так:
1
0
0

Затем второе число второй строки делим на всё эту строку, так, чтобы само оно стало единицей. После чего отнимаем вторую строку от всех, домноженную на второе число каждой из строк. Затем Аналогично и с третьей строкой и 3 числом.

В итоге выйдет что-то вроде:
1 0 0 | ответ 1
0 1 0 | ответ 2
0 0 1 | ответ 3


Тоесть x1 = ответ 1, x2 = ответ 2, x3 = ответ 3.

Прошу дать идейку и пару примеров - как такое реализовать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru