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

С++ метод Гаусса с единичной диагональю - програма не работает - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Суммировать два значения (классы) http://www.cyberforum.ru/cpp-beginners/thread795962.html
Объекты класса С1 и С2 анализируются нормально, но почему С3=2? Даже если инициализировать С1 =2, а С2 =5, то С3 = С1+С2 =2. Подскажите где ошибка. #include <iostream> using namespace std; //////////////////////////////////////////////////////////////////////////////// class LInt { private: int data; public:
C++ Подключить нужные библиотеки и исправить ошибки Здравствуйте, вот код кажется на с++, помогите пожалуйста подключить нужные библиотеки, исправить ошибку или сделать проект, а то у меня никак неполучаеться. int n; vector < vector<int> > a; // Матрица эффективности a vector<int> xy, yx; // Паросочетания: xy, yx vector<char> vx, vy; // Альтернирующее дерево vx, vy vector<int> maxrow, mincol; // Способности,... http://www.cyberforum.ru/cpp-beginners/thread795958.html
Построчное чтение файла в C++ Builder 6 C++
Есть кусок кода консольного приложения, слова заносим в массив строк (писал в Dev C++) ifstream w("words.txt"); string wordBase; for(int i = 0; i < 26800; i++) { w >> wordBase; }Нужно сделать так, чтобы это заработало в билдере. Код компилируется без ошибок, но в массив ничего не записывается.
Параллельный код решения системы C++
Доброго вечера, мастера нулей и единиц! Преподаватель дал задание - сам не разберусь никак. Может кто чего подскажет или поможет. Задание: написать параллельный код решения системы линейных уравнений методом Гаусса. С параллельными кодами и вычислениями вообще первый раз сталкиваюсь и как чего делать - не знаю. А сделать сказал до 14-00 четверга (28 февраля). Вот и не знаю че делать((( ...
C++ Ввод/вывод очень маленьких чисел http://www.cyberforum.ru/cpp-beginners/thread795950.html
Народ, срочно нужно! Подскажите, как сделать чтобы при арифметических операциях в С++ можно было посчитать числа порядка 10^(-200)? А еще лучше порядка 10^(-500)! У меня неизвестно по каким причинам меньше 10^(-18) не считает. Есть ли способ чтобы в проге все вычисления делались с помощью long double или хотя бы double
C++ Проблемы с stringObj.append(stringObj.at(i) и stringObj.append(classObj[i].charObj) Всем доброго времени суток. Столкнулся со странной проблемой. И не смог сам разобраться. При добавлении к строке (string) элемента другой строки (в коде помечено "//ПРОБЛЕМА_1") или символа (char) (//ПРОБЛЕМА_2) компилятор выдаёт сообщения об ошибке (см. спойлер). При этом, в реализации другого метода, подобная конструкция не создаёт проблем. kodStr.append(slovarFano.kod) kodStr, kod имеют... подробнее

Показать сообщение отдельно
Сергей999
Сообщений: n/a
27.02.2013, 02:20     С++ метод Гаусса с единичной диагональю - програма не работает
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
#include <stdio.h>
#include <stdlib.h>
#define N 3
int main()
{
    int i, j, k;
    float AMAX,M;    
    float  A[N][N+1]={{1,1,2,-1},
              {2,-1,2,-4},
              {4,1,4,2}};
    printf("Metod Gaussa z odunuchnoy diagonallu\n\n");
    printf("Ishodnaya matrica \n");
    for (i=0; i<N; i++)
    { 
        for (j=0; j<N+1; j++)
           printf("%10.2f ", A[i][j]);
        printf("\n");
    }
  /////////////////////////////////
    for (k=0; k<N-1; k++)
    {
        AMAX=A[k][k];
        k=0;
        for (i=k+1; i<N; i++)
        {
            if(A[i][k]>AMAX)
            {
            A[i][k]=AMAX;
            i=0;
            }
        }
        //perestanovka
        if(k!=i)
        {
         float buf[N+1];
             for(j=0; j<N+1; j++)
             {
             buf[j]=A[i][j];
             A[i][j]=A[k][j];
             A[k][j]=buf[j];         
             }         
        }
        //normuvannia
        for (i=0; i<N+1; i++)
        { 
                A[k][i]=A[k][i]/A[k][k];
        }
         A[k][k]=0;
 //zmina        
                for(i=k+1;i<N;i++)
                {
                  M=A[i][k];
                          for(j=k;j<N+1;j++)
                          {
                          A[i][j]=A[i][j]-M*A[k][j];     
                          }
                }     
    }
    
    for (i=0; i<N; i++)
    { 
        for (j=0; j<N+1; j++)
        {
           printf("%3.2f ", A[i][j]);
                printf("\n");
        }
    }
    
  /*int X[N];
  X[N]=A[N+1][N]/A[N][N];
    
    printf("Rezultuucha matrica:   \n");
    for (i=0; i<N; i++)
    { 
        for (j=0; j<N+1; j++)
           printf("%10.2f ", A[i][j]);
        printf("\n");
    }*/
    return 0;
    system("pause");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru