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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Передача данных между двумя приложениями. http://www.cyberforum.ru/cpp-beginners/thread571956.html
Суть проблемы такова: есть приложение на с#, производящее вычисления, результатом является массив данных. Есть прога на с++ + QT, умеющая визуализировать подобные данные. Вопрос: можно ли как-то передать данные (массив интов) из проги на с# в прогу на с++ в реальном времени (т.е., например, без записи в файл и чтения)?
C++ sdl отрисовка поля Хочется понять принцип отрисовки поля средствами sdl. Допустим нужно поле 3х3, ячейки поля квадратные поэтому использую SDL_Rect, где хранить координаты Х,Y в векторе или массиве? В конечном счете размер поля будет вводить сам юзер. И как реализовать цикл для создания вектора/массива с этими самыми координатами... первая мысль была постоянно увеличивать координату Х, на ширину ячейки поля, и... http://www.cyberforum.ru/cpp-beginners/thread571934.html
Запись класса в файл C++
Приветствую. Я хочу записать битовую форму класса, но столкнулся с делемой. Насколько мне известно, есть две группы функций записи битов в файл: 1) _wsopen_s _read _write _filelength _tell _lseek
C++ НЕконсольные приложения
Не умею создавать не консольные приложения. Ну совсем. Никто не учил, сам не понимаю. Где я могу почитать информацию о создании вин32 проектов. Можно пожалуйста литературу? И желательно более понятную и адекватную) Спасибо заранее)
C++ Хеш-таблица методом цепочек http://www.cyberforum.ru/cpp-beginners/thread571891.html
Здравствуйте, помогите написать хеш таблицу методом цепочек. Не могу понять, как все это сделать, перечитал кучу информации, никак понять не могу. Мне нужно чтобы был класс хеш таблица. Если не написать, так хотя бы объясните что моя программа будет включать в себя. Я так понял будет структура, что то вроде: struct item{ int key; int data; item* next; }; А дальше что, класс...
C++ Закольцевать и отсортировать двунаправленный список создать двунаправленный список с числами из диапазона от - 50 до + 50. после создания списка преобразовать его в кольцо. предусмотреть возможность движения по кольцу в обе стороны с отображением места положения текущего элемента. в конце работы восстановить начальный список. написать программу сортировки и поиска в двунаправленном списке. отсортировать список и вывести его на экран. найти элемент... подробнее

Показать сообщение отдельно
KPN
 Аватар для KPN
3 / 3 / 1
Регистрация: 23.03.2012
Сообщений: 40
16.05.2012, 15:20  [ТС]     Системы линейных уравнений методом Гаусса
а тот код рабочей программы что выше но со статическим массивом как прикрутить чтобы работало с динамическим???
ввод динамического массива я сделал, как приделать метод Гаусса???

Добавлено через 58 минут
все, разобрался. Вот рабочий код:
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
#include<iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
 
int main()
{
   int i, j, n, m;
//создаем массив
   cout << "введи число уравнений: ";
         cin >> n;
         cout << "введи число неизвестных: ";
         cin >> m;
         m+=1;
    float **matrix = new float *[n];
         for (i=0; i<n; i++)
             matrix[i] = new float [m];
 
//инициализируем
 
    for (i = 0; i<n; i++)
 
        for (j = 0; j<m; j++)
        {
            cout << "Элемент " << "[" << i+1 << " , " << j+1 << "]: "  ;
 
            cin >> matrix[i][j];
}
 
 //выводим массив
    cout << "matrix: " << endl;
      for (i=0; i<n; i++)
       {
          for (j=0; j<m; j++)
            cout << matrix[i][j] << " ";
        cout << endl;
       }
    cout << endl;
 
//Метод Гаусса
//Прямой ход, приведение к верхнетреугольному виду
    float  tmp, xx[m];
    int k;
 
    for (i=0; i<n; i++)
     {
       tmp=matrix[i][i];
         for (j=n;j>=i;j--)
             matrix[i][j]/=tmp;
           for (j=i+1;j<n;j++)
          {
             tmp=matrix[j][i];
               for (k=n;k>=i;k--)
             matrix[j][k]-=tmp*matrix[i][k];
          }
      }
  /*обратный ход*/
    xx[n-1] = matrix[n-1][n];
     for (i=n-2; i>=0; i--)
       {
           xx[i] = matrix[i][n];
           for (j=i+1;j<n;j++) xx[i]-=matrix[i][j]*xx[j];
       }
 
//Выводим решения
       for (i=0; i<n; i++)
           cout << xx[i] << " ";
       cout << endl;
 
    delete[] matrix;
 
   return 0;
}
 
Текущее время: 20:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru