5 / 5 / 3
Регистрация: 05.03.2013
Сообщений: 220
1

Как вывести на экран динамический массив?

26.08.2013, 15:43. Показов 4615. Ответов 5
Метки нет (Все метки)

Как вывести наэкран динамический масив подскажите плиз

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
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;
class myMas
{
public:
myMas();
~myMas();
int operator[](int ar);
void display();
private:
int *size;
int m;
};
 
myMas::myMas()
{
size=new int[10];
}
 
 
myMas::~myMas()
{
delete [] size;
}
int myMas::operator[](int ar)
{
return ar*m;
}
void myMas::display()
{
 
?????????????????;
}
void main()
{
    myMas ekz[5];
    ekz[5].display();
 
system ("pause");
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.08.2013, 15:43
Ответы с готовыми решениями:

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

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

Создать динамический массив треугольной формы и вывести его на экран
Как создать динамический массив треугольной формы и вывести его на экран?

Поместить все символы, находящиеся в стеке, в динамический массив, вывести на экран содержимое массива
Помогите пожалуйста :wall: 1) Построить стек символов. 2) Вывести на экран содержимое стека. 3)...

5
444 / 348 / 32
Регистрация: 16.10.2010
Сообщений: 842
Записей в блоге: 7
26.08.2013, 16:18 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
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;
class myMas
{
    public: 
        myMas();
        ~myMas();
        myMas(int n);
    int operator[](int ar);
    void display();
    private:
        int *size;
        int m;
        int count;
};
myMas::myMas(int n)
{
    size = new int[n];
    count = n;
}
myMas::~myMas()
{
    delete [] size;
}
int myMas::operator[](int ar)
{
    return myMas::size[ar];
}
void myMas::display()
{
    for (int i = 0; i < myMas::count; i++)
        cout << myMas::size[i] <<endl;
}
void main()
{
    myMas ekz = myMas(5);
    ekz.display();
    system ("pause");
    cin.get();
}
1
5 / 5 / 3
Регистрация: 05.03.2013
Сообщений: 220
26.08.2013, 17:36  [ТС] 3
А как теперь перегрузить operator+


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
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;
class myMas
{
public:
myMas(int n);
~myMas();
int operator[](int ar);
myMas& operator+(const myMas& ar);
void display();
private:
int *size;
int m;
int count;
};
 
myMas::myMas(int n)
{
size=new int[n];
count=n;
}
 
 
myMas::~myMas()
{
delete [] size;
}
int myMas::operator[](int ar)
{
    return myMas::size[ar];
}
 
myMas& myMas::operator+(const myMas& ar)
{
    return *this;
}
void myMas::display()
{
    srand(time(NULL));
    for(int i=0;i<myMas::count;i++)
    {
        myMas::size[i]=rand()%10;
         cout << myMas::size[i] <<' ';
    }
}
void main()
{
    myMas ekz=myMas(5),ekz1=myMas(2),ekz2=ekz+ekz1;
 
    ekz2.display();
 
system ("pause");
}

+(добавление элемента в конец массива),


Добавлено через 6 минут
где operator+ (добавление элемента в конец массива),
0
15 / 15 / 7
Регистрация: 27.10.2012
Сообщений: 112
26.08.2013, 17:59 4
Может быть легче будет заменить "int* size" на "vector<int> size"?
Тогда для добавления элемента(в том числе и в перегруженном операторе) достаточно будет добавить size.push_back(n); где n - добавляемая переменная. И о памяти беспокоиться не надо.
0
5 / 5 / 3
Регистрация: 05.03.2013
Сообщений: 220
26.08.2013, 18:42  [ТС] 5
Цитата Сообщение от san92der Посмотреть сообщение
Может быть легче будет заменить "int* size" на "vector<int> size"?
Тогда для добавления элемента(в том числе и в перегруженном операторе) достаточно будет добавить size.push_back(n); где n - добавляемая переменная. И о памяти беспокоиться не надо.
Может быть только вектора мы еще не изучали.

Добавлено через 38 минут
Создайте класс динамического массива, в котором реализована проверка выхода за границы массива. Перегрузите операторы: [ ], =, +, -,++ (добавление элемента в конец массива), -- (удаление элемента из конца массива).
0
15 / 15 / 7
Регистрация: 27.10.2012
Сообщений: 112
26.08.2013, 20:41 6
Ты тогда лучше из display() убери добавление переменных. У тебя есть переменная, которая хранит размер выделенной памяти(count), добавь еще одну, которая будет хранить количество элементов в массиве(назови, например, size, а сам массив переименуй в mass, а то как-то странно).
И тогда напиши отдельную функцию добавления нового элемента на подобии:
C++
1
2
3
4
5
6
AddElem(int elem)
{
   if(count==size)return 1;
   mass[size]=elem;
   size++;
}
Потом ставь эту функцию туда, где ты собираешься добавлять элементы. Например, при перегрузке operator++
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.08.2013, 20:41
Помогаю со студенческими работами здесь

Как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на экран?
как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на...

Сформировать динамический двумерный массив, заполнить его случайными числа-ми и вывести на экран монитора. Добавить строку в начало матрицы
Помогите на завтра сделать лабу 2.Сформировать динамический двумерный массив, заполнить его...

Есть динамический массив с размерностью 5, необходимо его сделать с размерностью 6, заполнить цифрами и вывести на экран
День добрый. Не хочется никому морочить голову дурацкими вопросами, поэтому стараюсь находить на...

Как вывести трехмерный динамический массив
народ можете подсказать) написал код, где заполняется трехмерный массив так как мне необходимо, но...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru