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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
#1

Запрограммировать класс матрица, и расписать методы работы с ним - C++

17.10.2013, 20:58. Просмотров 750. Ответов 18
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
class Matrix
{
  public:
    Matrix(int n, int m);
    ~Matrix();
    double &get(int i, int j);
    void transp(); // транспонировать
    void add(double x); // прибавить ко всем элементам матрицы x
    void multiply(double x); // умножить все на x
    void print();  // распечатать состояние объекта
};
cпасайтееееее надо написать в кодблокс или с++. я совершенный ноль в этом, помогитеееее
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2013, 20:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запрограммировать класс матрица, и расписать методы работы с ним (C++):

Разработать класс прямоугольник и методы работы с ним - C++
Прямоугольник с полями длина и высота прямоугольника и методами ввода,вывода полей,вычисления площади прямоугольника. Создать массив n...

Разработать класс «Циклический список» и методы работы с ним - C++
нужно срочно написать такую штуку, брат сидит на зачете и скинул задание. Помогите пожалуйста.

Создать базовый класс Матрица и производные - методы работы с ней - C++
Создать иерархию классов представляющих простое наследование. Базовый класс – квадратная матрица (динамическая (int **mt или int* или int...

Создать класс для описания объекта и работы с ним - C++
В методах предусмотреть запись, чтение, изменение свойств объекта. Объект - матрица целых чисел. Действия над объектом (объектами): ...

Организовать класс квадратная матрица размерности 3 на 3, содержащий методы - C++
Организовать класс квадратная матрица размерности 3 на 3, содержащий методы: вывода матрицы в общепринятом виде, нахождения...

Организовать класс квадратная матрица размерности 2 на 2, содержащий методы - C++
1) Составить описание класса. 2) В классе предусмотреть не менее трех конструкторов различных типов. 3) Объявить объекты класса и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 21:01 #2
Виктория1234, так вы же в с++ написали,и ошибок я не вижу
или вам нужно сами функции расписать?
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 21:04  [ТС] #3
это-то я написала, а дальше-то что?! знаю, смешно звучит, но я не знаю как писать дальше... верней я как бы написала, но ошибок столько выдала что я в отчаянии все удалила.
magirus
Супер-модератор
Эксперт по компьютерным сетямЭксперт Windows
26500 / 14802 / 844
Регистрация: 15.09.2009
Сообщений: 64,407
Записей в блоге: 69
17.10.2013, 21:07 #4
Цитата Сообщение от Виктория1234 Посмотреть сообщение
а дальше-то что?!
а бог вас знает что дальше...
условия то задачи нет...
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 21:07  [ТС] #5
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, так вы же в с++ написали,и ошибок я не вижу
или вам нужно сами функции расписать?
да, нужно их расписать, а как я не знаю(
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 21:09 #6
Виктория1234, давайте наработки. Начнем с конструктора и создания массива, то есть матрицы
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 21:10  [ТС] #7
Цитата Сообщение от magirus Посмотреть сообщение
а бог вас знает что дальше...
условия то задачи нет...
нужно запрограммировать класс матрица, и расписать транспонирование, прибавление ко всем элементам матрицы х, умножение все на х и распечатать состояние объекта
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 21:47 #8
Виктория1234, наработки то выложите) посмотрим, поможем исправить
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 22:36  [ТС] #9
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, наработки то выложите) посмотрим, поможем исправить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class CMatrixStr
{
private:
    int Rows;
    int Cols;
    float ** FloatData;
    float * DataMin;
    float * DataMax;
        
public:
    CMatrixStr(int Row=1,int Col=1);
    ~CMatrixStr(void);
    float GetAt(int Row,int Col);
    void SetAt(int Row,int Col,float Data);
    void Display();
    void MinMax(int Row);
    void Fill();
};
мож так
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 22:37 #10
Виктория1234, а сами функции делали? Если да, тоже выложите)
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 22:46  [ТС] #11
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, наработки то выложите) посмотрим, поможем исправить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "iostream.h"
#include "matrix.h"
 
void main()
{
    // спросим сколько колонок и строк
    int Row,Col;
    cout << "\nRow ?:" ;
    cin >> Row ;
    cout << "\nCol ?:" ;
    cin >> Col ;
 
 
    CMatrixStr Matrix(Row,Col);    
    Matrix.Fill();                               
    Matrix.Display();                        
}
Добавлено через 7 минут
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, а сами функции делали? Если да, тоже выложите)
неа, ничего не делала больше... я походу единственный человек который реально нифига не понимает в программировании
это печально...
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 23:06 #12
Виктория1234, ну раз признались, то давайте начинать понимать) начинаем делать с конструктора, куда передаются размеры матрицы. В конструкторе нужно объявить динамическую матрицу nxm.
В деструкторе напротив, удалить эту матрицу, что бы освободить память.
Объявлять матрицу примерно так...

C++
1
2
3
floatData = new double*[n];
for (int i=0;i<n;i++)
floatData[i]=new double[m];
Добавлено через 8 минут
Виктория1234, идеи по поводу деструктора есть?
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 23:11  [ТС] #13
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, ну раз признались, то давайте начинать понимать) начинаем делать с конструктора, куда передаются размеры матрицы. В конструкторе нужно объявить динамическую матрицу nxm.
В деструкторе напротив, удалить эту матрицу, что бы освободить память.
Объявлять матрицу примерно так...

C++
1
2
3
floatData = new double*[n];
for (int i=0;i<n;i++)
floatData[i]=new double[m];
Добавлено через 8 минут
Виктория1234, идеи по поводу деструктора есть?
я если честно не понимаю почему мы даже так объявили матрицу, а как я скинула нельзя делать?
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
17.10.2013, 23:14 #14
Виктория1234, а вы скидывали код, где создавалась матрица? Где?
Виктория1234
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 9
17.10.2013, 23:22  [ТС] #15
Цитата Сообщение от Folko Посмотреть сообщение
Виктория1234, а вы скидывали код, где создавалась матрица? Где?
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
#include "iostream.h"      
#include "stdlib.h"             
#include "stdio.h"
#include "matrix.h"            
 
CMatrixStr::CMatrixStr(int Row,int Col)
{
    Rows = Row;        
    Cols = Col;
    FloatData= new float * [Rows];
 
    for (int j=0;j<Rows;j++){
        FloatData[j] = new float[Cols];
        for (int i=0;i<Cols;i++){
            FloatData[j][i]=0.0;
        }
    }
    return;
};
CMatrixStr::~CMatrixStr()
{
 
       for (int j=0;j<Rows;j++)
{
        delete FloatData[j];
    }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2013, 23:22
Привет! Вот еще темы с ответами:

Класс Квадратная матрица. Методы: сложение с матрицей, транспонирование, вывод элементов - C++
Класс «Квадратная матрица». Методы: сложение с матрицей, транспониро-вание, вывод элементов матрицы на дисплей. А следующая программа,...

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

Создать класс Triad (тройка чисел) - определить методы; определить производный класс Date - переопределить методы - C++
Создать класс Triad (тройка чисел); определить методы увеличения полей на 1. Определить производный класс Date с полями: год, месяц и день....

Разработать класс "Счет физического лица" и обеспечить возможность работы с ним - C++
-продумать атрибуты класса и инкапсулировать их в закрытой части интерфейса класса; -определить в классе по крайней мере три...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.10.2013, 23:22
Ответ Создать тему
Опции темы

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