Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Людмила Юрьевна
0 / 0 / 0
Регистрация: 16.11.2015
1

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

17.05.2013, 15:51. Просмотров 981. Ответов 6
Метки нет (Все метки)

Кто-нибудь подскажите, пожалуйста написать программу в С++.
Ввести класс для работы с прямоугольной матрицей.
Реализовать операции:
а) сложение двух матриц (операция +);
б) умножение двух матриц (операция *).
Заранее всем большое спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2013, 15:51
Ответы с готовыми решениями:

Создать класс матриц с целочисленными элементами и определить операции умножения и сложения
Всем привет, помогите с задачей, заранее спасибо. Создать класс матриц с...

Создать класс для работы с прямоугольной матрицей размером 3х3
ввести класс для работы с прямоугольной матрицей(3х3) Реализовать оперцию :...

Класс для работы с прямоугольной матрицей, ввод матрицы с консоли (оператор >>)
ввести класс для работы с прямоугольной матрицей(3х3) Реализовать операцию :...

Реализовать функции сложения, вычитания и умножения матриц
Задание: Разработать программу для работы с двумя матрицами. Реализовать...

Создать класс Matrix и функции умножения и сложения матриц
Создайте класс Matrix на базе вектора vector<vector<int>>. Определите...

6
DiffEreD
1442 / 779 / 257
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
17.05.2013, 16:24 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
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";
        } 
    }
};
1
gray_fox
17.05.2013, 17:20
  #3

Не по теме:

Цитата Сообщение от yuron_477 Посмотреть сообщение
C++
1
explicit matrix(const std::size_t rows = 0, const std::size_t cols = 0)
Если я создам matrix instance(5);, то получится матрица 5x0?

0
ghostfeeling
0 / 0 / 1
Регистрация: 19.12.2013
Сообщений: 18
01.10.2015, 17:18 4
Доброго времени суток. Дело в том, что на Visual Studio 2013 в результате выполнения этой программы выдаёт две ошибки.

C++
1
2
3
Ошибка  1   error LNK1561: точка входа должна быть определена
 
Ошибка  2   error MSB6006: "link.exe" завершилась с кодом 1561.
В чём может быть проблема?
0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
01.10.2015, 17:24 5
ghostfeeling, это код класса, а не целиком программы.
0
zss
Модератор
Эксперт С++
7378 / 6778 / 4290
Регистрация: 18.12.2011
Сообщений: 17,911
Завершенные тесты: 1
01.10.2015, 17:31 6
Класс Матрица
И др. ссылки внизу страницы
0
sourcerer
Модератор
Эксперт CЭксперт С++
4868 / 2053 / 325
Регистрация: 20.02.2013
Сообщений: 5,554
Записей в блоге: 24
Завершенные тесты: 1
01.10.2015, 18:38 7
В качестве базиса, можно взять вот этот код, например.
0
01.10.2015, 18:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2015, 18:38

Реализовать класс для работы с квадратной целочисленной матрицей
1) Составить описание класса для работы с квадратной целочисленной матрицей....

Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется
Помогите написать код. Реализуйте класс «Вектор», а именно: Операции...

Реализовать класс Vector и перегруженные операции сложения (+), скалярного (%) и векторного (*) произведения
Создайте класс Vector (вектор), включающий поля: координаты вектора. Реализуйте...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru