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

Ввести класс для работы с прямоугольной матрицей, реализовать операции сложения и умножения матриц - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Открытие ссылок в браузере в с++? http://www.cyberforum.ru/cpp-beginners/thread868276.html
задача такая: надо открывать одну и ту же ссылку на сайт через определенный интервал времени. как это делать в с++?
C++ странное определение функций Читал заголовочный файл, так наткнулся на следующее выражение: #define MPI_MAX (MPI_Op)(0x58000001) Что означает такое определение функции, прокоментируйте? MPI_MAX - функция. http://www.cyberforum.ru/cpp-beginners/thread868273.html
Немогу найти ошибку C++
Надо объекты (произвольное количество) записать в файл, затем прочесть их из файла и вывести на экран. У меня происходит зацикливание во втором цикле. Толи записываю не так, то ли считываю не так. В книге есть пример с классом fstream. Я пробую с if и of - не получается почему-то. Вот код: #include <iostream> #include <fstream> using namespace std; class Distance {
Машина Тьюринга для вычисления квадратного многочлена (x^2+bx+c=0) C++
Помогите, пожалуйста, составить Машина Тьюринга для вычисления квадратного многочлена(x ^ 2 + bx + c = 0). Унарное представление( т.е. l ^ a , l ^ b , l ^ c )
C++ Set, скорость http://www.cyberforum.ru/cpp-beginners/thread868258.html
Доброго времени суток. Получил задачу написать set, не просто set, а быстрый основанный на бинарном дереве поиска set. Вот что получилось. #ifndef SET_H #define SET_H
C++ Реализовать функцию max, использующую параметры по умолчанию 1. Реализовать функцию, использующую параметры по умолчанию. Функция max(xi×x j),i∈, j∈,i≠ j Тип параметров double 2. Написать программу для тестирования разработанной функции. 3. Разработать набор тестов и проверить на них работоспособность реализованной функции подробнее

Показать сообщение отдельно
DiffEreD
 Аватар для DiffEreD
1424 / 761 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
17.05.2013, 16:24     Ввести класс для работы с прямоугольной матрицей, реализовать операции сложения и умножения матриц
Класс матрицы:
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
template<typename T>
class matrix
{
  private:
      T** m_matrix;
      std::size_t m_rows, m_cols;
      std::size_t m_size;
  public:
    typedef T*          iterator;
    typedef const T*    const_iterator;
    iterator        begin()         {return m_matrix[0];}
    iterator        end()           {return m_matrix[0]+m_size;}
    
    explicit matrix(const std::size_t rows = 0, const std::size_t cols = 0): m_rows(rows), m_cols(cols), m_size(m_cols*m_rows)
    {
      if (m_size == 0)
        m_matrix = nullptr;
      m_matrix = new T*[m_rows];
      m_matrix[0] = new T[m_size];
      for (size_t i = 1; i<m_rows; ++i)
          m_matrix[i] = m_matrix[i-1]+m_cols;
    }
    
    ~matrix()
    {
      if (m_matrix)
      {
          delete[] m_matrix[0];
          delete[] m_matrix;
      }
      else
          delete[] m_matrix;
    }
    
    const T* operator[](std::size_t index) const {return m_matrix[index];}
    T* operator[](std::size_t index) {return m_matrix[index];}
    
    void print(const int format = 0) const
    {
      for (std::size_t i = 0; i<m_rows; ++i)
        {
          for (std::size_t j = 0; j<m_cols; ++j)
            std::cout<<std::setw(format)<<m_matrix[i][j]<<" ";
          std::cout<<"\n";
        } 
    }
};
 
Текущее время: 07:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru