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

дописать проверку на ненулевой элемент

06.12.2015, 15:26. Показов 471. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! помогите мне пожалуйста! мне надо решить систему методом Гаусса Есть программа, но тут отсутствует проверка на ненулевой элемент! можете пожалуйста помочь с её написанием?
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
#include <iostream>
#include <fstream>//бтблиотека ввода и вывода
#include <windows.h>
#include <math.h>//численные расчеты
#include <tchar.h>
using namespace std;
int main(){
{setlocale(LC_ALL,"Rus");
    float A[10][10];
const int N =4;
    const  int M=5;
    fstream fs("tex.txt");
    for (int i =0; i<N;i++)
    {for (int j=0; j<M; j++){
    fs>>A[i][j];
    cout<< "   " << A[i][j];}                  
    cout<<endl;
    }
 
   //прямой ход
    float b,c;
    
// делится система на A[i][i]
    for (int i = 0; i < N; i++) {
        b = A[i][i];
        for (int j = i; j < M; j++)
            A[i][j] /= b;
 // складываются первое и второе уравнения и умножаются на соотв числа
        if (i != (N-1)) {
            for (int k = i+1; k < N; k++) {
                 c = A[k][i];
                 for (int n = 0; n < M; n++) {
                     A[k][n] = -1*c*A[i][n]+A[k][n];
                 }
            }
        }}
    
   cout << endl << " матрица верхнетреугольного вида:" << endl;
    for (int i = 0; i < N; i++) {
        for (int j=0; j < M; j++)
        cout << A[i][j] << "   ";
        cout << endl;
     }
 
         float z;
         float X[10];
    //обратный ход
 
    X[N-1] = A[N-1][M-1];
    for (int g = N-2; g >= 0; g--) {
       z = 0;
       for (int d = g+1; d < N; d++)
           z+=A[g][d]*X[d];
       X[g]=A[g][M-1]-z;
    }
 
    cout << endl << "Ответ:" << endl;
    for (int i = 0; i < N; i++) {
       cout << "X" << i+1 << "=" ;
       cout << X[i] << endl;
    }
 
    system ("pause");
    return 0;
}
 
 
}
Добавлено через 44 минуты
и объясните пожалуйста код, я его не совсем понимаю(
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.12.2015, 15:26
Ответы с готовыми решениями:

Увеличить каждый ненулевой элемент массива на «3»
Напишите программу, которая увеличит каждый ненулевой элемент массива на «3» (12). Ввод данных в...

вывести первый ненулевой элемент в строке
если ввод без пробелов, работает норм, если впереди поставить пробелы, собственно выводит пробел, а...

Нужно получить последний ненулевой элемент в строке
Нужно получить последний ненулевой элемент в строке. Есть строка из цифр, нужно получить последний...

Каждый ненулевой элемент заменить минимальным среди элементов вектора
Здравствуйте! Помогите пжл. Задан вектор, в котором есть ненулевые элементы. Каждый ненулевой...

0
06.12.2015, 15:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.12.2015, 15:26
Помогаю со студенческими работами здесь

Найти номер последней из строк, содержащих хотя бы один ненулевой элемент
int main() { setlocale(LC_ALL, &quot;Russian&quot;); printf(&quot;Матрица \n&quot;); printf(&quot;\n&quot;); int** A =...

Найти количество строк матрицы, содержащих хотя бы один ненулевой элемент
Дана целочисленная прямоугольная матрица mна n. Найти количество строк, содержащих хотя бы один...

Каждый ненулевой элемент заменить средним значение среди элементов вектора
написать код :Задан вектор, в котором есть ненулевые элементы. Каждый ненулевой элемент заменить...

Метод который делает проверку и submit. Что дописать?
Добрый день! Подскажите пожалуйста, что необходимо дописать в методе, что бы он отправил данные...


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

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

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