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

Заполнение матрицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заданная сортировка массива http://www.cyberforum.ru/cpp-beginners/thread187572.html
Дано - N. Количество элементов массива 2N. Сами элементы генерируются случайным образом. Выстроить элементы в порядке: Наибольший - N-1, следующий - N-й, затем - (N-2)-й, (N+1)-й и т.д. То есть сначала сортирую по убыванию, и начинаю присваивание массиву б. Но если ставить и++ то массив получается неправильный так как я присваиваю сразу 2 элемента, если же и+=2 то опять же массив...
C++ ввод из файла. права доступа портачат. struct TASK { char* name; int time; int priority; int duration; }; struct In_GZ { TASK* T; In_GZ* next; }; http://www.cyberforum.ru/cpp-beginners/thread187558.html
Сумма чисел Фибоначчи C++
здраствуйте, я только начинаю осваивать этот язык и очень нужна помощь. Дали задачку, а я понятия не имею что и как писать.
C++ Удалить ненужные пробелы
#include <iostream> #include <stdlib.h> #include <stdio.h> #include <string.h> using namespace std; int main() { int i, j, len; char *text = new char;
C++ Решение системы уравнений содержащее exp(). http://www.cyberforum.ru/cpp-beginners/thread187532.html
Необходимо составить блок-схему алгоритма и написать программу на языке Си для вычисления значений переменных Y и Z по заданным формулам. Аргументы и значения, возвращаемые всеми математическими функциями, имеют тип double. Программу реализовать с использованием команд форматного ввода-вывода IO (Input/Output) printf(), scanf(). Программа должна выполнять следующие действия: 1) вывести...
C++ вытащить числа из строки имеется строка формата (%d,%d)(%d,%d)(%d,%d)(%d,%d)... которая вводится пользователем с клавиатуры. как извлечь из нее эти числа? подробнее

Показать сообщение отдельно
HeaBod
 Аватар для HeaBod
0 / 0 / 0
Регистрация: 11.03.2009
Сообщений: 17
07.11.2010, 17:44     Заполнение матрицы
Всем привет.
Нужно написать заполнение двумерного динамического массива.
Вот как у меня это выглядит:
есть класс Matrix:
Matrix.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once
 
class Matrix
{
private:
    int row;
    int column;
public:
    int **arr;
    Matrix();
    void Create();
    void Read();
    void FillMatrix();
    int GetRow();
    int GetColumn();
    void SetRow(int);
    void SetColumn(int);
   ~Matrix();
};
Matrix.cpp
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
#include "StdAfx.h"
#include "Matrix.h"
#include <iostream>
using namespace std;
 
Matrix::Matrix()
{   
    row = 0;
    column = 0;
}
 
void Matrix::Create()
{   
    arr = new int *[row];
    for (int i = 0; i < row; i ++)
    {
        arr[i] = new int [column];
    }
 
}
 
    
void Matrix::Read()
{
    cout << "matrix";
    
}
 
void Matrix::FillMatrix()
{
    for (int i = 0; i < row; i++)
{
   for (int j = 0; j < column; j++)
   {
       arr[i][j] = 7;// здесь ошибка!!!
   }
}
 
}
 
int Matrix::GetRow()
{
    return row;
}
 
int Matrix::GetColumn()
{
    return column;
}
 
void Matrix::SetRow(int r)
{
    row = r;
}
 
void Matrix::SetColumn(int c)
{
    column = c;
}
 
Matrix::~Matrix()
{
    delete [] arr;
}
класс System
System.h
C++
1
2
3
4
5
6
7
8
9
10
11
#pragma once
#include "Matrix.h"
class System
{
public:
    Matrix *A;
    double *B;
    System();
    ~System();
    
};
System.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
#include "StdAfx.h"
#include "System.h"
 
System::System()
{
    A = new Matrix();
}
 
System::~System()
{
}
main:
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include "Matrix.h"
#include "System.h"
using namespace std;
 
 
int main() {
 
 
System *s = new System();
 
s->A->Read();
s->A->Create();
s->A->SetRow(7);
s->A->SetColumn(3);
 
cout << s->A->GetRow() << " ";
cout << s->A->GetColumn() << " ";
 
s->A->FillMatrix();
 
for (int i = 0; i < s->A->GetRow(); i++)
{
    for (int j = 0; j < s->A->GetColumn(); j++)
    {
        cout << s->A->nmatrix[i][j] << " ";
    }
}
delete s;
return 0;
}
Все компилится,но при выполнении происходит ошибка CXX0030: Error: expression cannot be evaluated
там где я хочу присвоить значения элементам. Не могу понять как это исправить
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru