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

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

Войти
Регистрация
Восстановить пароль
 
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
#1

Динамический массив - C++

02.01.2014, 15:20. Просмотров 942. Ответов 11
Метки нет (Все метки)

Имеется код, решающий транспортную задачу.
Если задача "закрытая", то есть добавлять строки и столбцы не нужно, то все работает как надо, но как только возникает потребность в добавлении, функционирования прекращается, хотя вычисляющий фрагмент один и тотже, то есть проблема в неправильной инициализации массива, я так думаю.
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
#include <iostream>
#include <stdio.h>
#include <windows.h>
using namespace std;
int i,j;
int M,N;
int n,m;//Размерность задачи
float *a;  //адрес массива запасов поставщиков
float *b;  //адрес массива потребностей потребителей
float **C; //адрес массива(двумерного) стоимости перевозки
float **X;//адрес массива(двумерного) плана доставки
 
 
 
int main()
{
    SetConsoleCP(1251);
SetConsoleOutputCP(1251);
    N=n;
    M=m;
    cout<<"Введите колличество поставщиков:  ";// Вводим колличество поствщиков
    cin>>N;
        cout<<"\n";
    cout<<"Введите колличество потребителей: ";// Вводим колличество потребителей
    cin>>M;
    cout<<"\n";
    a = new float[20];//+3
    // Вводим запасы поставщиков 
 
 
    for(i=0;i<N;i++)
    {
        cout<<"Введите запасы "<<i+1<< " поставщика: ";
        cin>>a[i];
    }
        cout<<"\n";
 
    // Вводим запасы потребителей
    b=new float[20];//+3
 
    for(j=0;j<M;j++)
    {
        cout<<"Введите потребность "<<j+1<< " потребителя: ";
        cin>>b[j];
    }
        cout<<"\n";
float** C=new float*[20];//+3
    for (i=0;i<20 ;i++)//+3
    C[i]=new float[20];//+3
 
    // Вводим массив стоимости.
    
         for(i=0;i<N;i++)
         
          for(j=0;j<M;j++)
          {
              cout<<"Введите стоимость перевозки от "<<i+1<<" поставщика к "<<j+1<<"  потребителю:  ";
              cin>>C[i][j];
          }
    
 
float Sa=0;
float Sb=0;
for(int i=0;i<N;i++)//находим суммарные запасы
{
    Sa=Sa+a[i];
}
 
for( j=0;j<M;j++)//находим суммарную потребность
{
    Sb=Sb+b[j];
}
if(Sa==Sb)cout<<"Транспортная задача - закрытая.";
     else
     {
       cout<<"Транспортная задача - открытая. \n";
 
        if(Sa>Sb)
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного потребителя ";
 
             M++; 
             for( i=0;i<=N;i++)
                C[M][i]=0;//стоимость перевозки фиктивному потребителю равна нулю
             b[M+1]=Sa-Sb;//спрос фиктивного потребителя
           }
        else
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного поставщика ";
             N++; 
           
             for(int j=0;j<=M;j++)
                   C[i][N]=0;//стоимость перевозки от фиктивного поставщика равна нулю
                   a[N+1]=Sb-Sa;//запас фиктивного поставщика
          }
       }
 
//***************************************************//
 
    //Двумерный массив для Доставки:
     float** X=new float*[20];//выделяем память под массив адресов начала строк
        for(int i=0;i<20;i++)
           X[i]=new float[20];//выделяем память для каждой строки
       /*
        В последней строке(столбце) массива Х будем записывать
        сумму заполненных клеток в соответствующем столбце(строке)
       */
        for(int i=0;i<N;i++)
        {    
            for(int j=0;j<M;j++)
         {
             X[i][j]=-1;//вначале все клетки не заполнены
             if(i==N)X[i][j]=0;//сумма заполненных клеток в j-м столбце
             if(j==M)X[i][j]=0;//сумма заполненных клеток в i-й строке
         }
        }
//***************************************************//
 
//-----------------Метод минимального элемента:
        int im;
        int jm;
        int kk=0;
        float Sij=0;
        do
        {
           int Cmin=-1;
           for(int i=0;i<N;i++)
             for(int j=0;j<M;j++)
               if(X[N][j]!=b[j])//если не исчерпана Потребность Bj
                 if(X[i][M]!=a[i])//если не исчерпан Запас Аі
                    if(X[i][j]<0)//если клетка ещё не заполнена
                      {
                        if(Cmin==-1)//если это первая подходящая ячейка
                           {
                            Cmin=C[i][j];
                            im=i;
                            jm=j;
                           }
                        else //если это не первая подходящая ячейка
                          if(C[i][j]<Cmin)//если в ячейке меньше,чем уже найдено
                            {
                              Cmin=C[i][j];
                              im=i;
                              jm=j;
                             }
                        }
                
               X[im][jm]=min(a[im]-X[im][M],b[jm]-X[N][jm]);//выбираем поставку
               X[N][jm]=X[N][jm]+X[im][jm];//добавляем поставку jm-му потребителю
               X[im][M]=X[im][M]+X[im][jm];//добавляем поставку im-му поставщику
               Sij=Sij+X[im][jm]; //Подсчёт суммы добавленых поставок
               
              
        } while(Sij<max(Sa,Sb));//условие продолжения
 
        int L=0;
        for(int i=0;i<N;i++)
          for(int j=0;j<M;j++)
            if(X[i][j]>=0)L++;//подсчёт заполненных ячеек
        int d=M+N-1-L;//если d>0,то задача - вырожденная,придётся добавлять d нулевых поставок
        int d1=d;//запоминаем значение d
            cout<<"\n";
        cout<<" Начальный опорный план: \n";
            cout<<"\n";
         for(int i=0;i<N;i++)
         {
          for(int j=0;j<M;j++)
          { 
              if (X[i][j]==-1)
                  X[i][j]=0;
 
              cout<<X[i][j]<<" \t ";
          }
 
 
 
 
            cout<<"\n";
        }
         int Sum=0;
 for(int i=0;i<N;i++)
         {
          for(int j=0;j<M;j++)
          {   
              Sum+=X[i][j]*C[i][j];
          }
 }
    cout<<"\n";
    cout<<"Сумма перевозок равно:   "<<Sum;
    cout<<"\n";
 
        // return 0;
system("pause");
}
Подскажите в чем проблема.
Векторы думал использовать, но хочется оформить через массивы.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2014, 15:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Динамический массив (C++):

Можно ли в классе создавать массив переменной длинны. Например динамический массив? - C++
Динамические массивы привлекают больше. :)

Написать функцию принимающую массив и возвращающую указатель на динамический массив - C++
Написать функцию принимающую массив и возвращающую указатель на динамический массив содержащий первые n нaибольших чисел. Как сделать...

Заполнить динамический массив из файла и записать массив обратно в файл - C++
Подскажите пожалуйста функцию которая будет заполнять Динамический массив из файла и обратную которая этот массив запишет в файл=)

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

Массив: передать динамический массив в функцию и записать в каждый элемент строку из файла - C++
задача: передать динамический массив в функцию, и записать в каждый элемент строку из файла. количество строк известно вот что у меня...

Как преобразовать массив в динамический? Массив вычисляет сумму элементов каждой диагонали матрицы - C++
Ошибка : Вызвано исключение по адресу 0x00BB2F4F в Проект6.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0xFDFDFE05. #...

11
Genn55
368 / 215 / 41
Регистрация: 26.12.2012
Сообщений: 708
02.01.2014, 16:23 #2
Скорее всего проблема с выделением памяти.Вы объявили размеры M,N,а память выделяете под фиксированный размер [20]
C++
1
2
  a = new float[20];//+3
    // Вводим запасы поставщиков
и
C++
1
2
3
float** C=new float*[20];//+3
    for (i=0;i<20 ;i++)//+3
    C[i]=new float[20];//+3
попробуйте
C++
1
2
3
float** C=new float*[N];//+3
    for (i=0;i<20 ;i++)//+3
    C[i]=new float[M];//+3
и
C++
1
2
  a = new float[N];//+3
    // Вводим запасы поставщиков
1
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
02.01.2014, 17:50  [ТС] #3
С 20 это уже мои "экспиременты".
Я выделил памяти под размер, который будет на 100% больше чем то , который введен. А М и Н сделал как простые ограничения, и уже после к М или Н прибавлял 1 и просто смещал границу.
0
Ev_Hyper
Заблокирован
02.01.2014, 19:24 #4
Цитата Сообщение от Lotus34 Посмотреть сообщение
Имеется код, решающий транспортную задачу.
решение методом минимального элемента ? Он же не оптимальный.

Добавлено через 36 минут
А, ну по поводу проблемы, то вы запутались в индексациях.
C++
1
2
3
M++; 
 for( i=0;i<=N;i++)
 C[M][i]=0;//стоимость перевозки фиктивному потребителю равна нулю
откуда вы берете <=?
далее, M-столбцы, а вы меняете по строкам.
Дальше, вы изменили М++, а обращаетесь потом к M (а надо M-1)

C++
1
2
3
N++; 
for(int j=0;j<=M;j++)
 C[i][N]=0;
Тут у вас цикл по J, а меняете по I.
Остальные ошибки те же, что в том случае.
В итоге:
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
if(Sa==Sb)cout<<"Транспортная задача - закрытая.";
     else
     {
       cout<<"Транспортная задача - открытая. \n";
 
        if(Sa>Sb)
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного потребителя ";
 
             M++; 
             for( i=0;i<N;i++)
                C[i][M-1]=0;//стоимость перевозки фиктивному потребителю равна нулю
             b[M+1]=Sa-Sb;//спрос фиктивного потребителя
           }
        else
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного поставщика ";
             N++; 
           
             for(int j=0;j<M;j++)
                   C[N-1][j]=0;//стоимость перевозки от фиктивного поставщика равна нулю
                   a[N+1]=Sb-Sa;//запас фиктивного поставщика
          }
       }
        cout<<endl;
         for(i=0;i<N;i++){
          for(j=0;j<M;j++)
          {
              cout<<C[i][j]<<" ";
          }
          cout<<endl;
         }
И от глобальных переменных в такой реализации лучше избавиться.
1
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
02.01.2014, 20:01  [ТС] #5
Данный метод использую так как, задание было с нахождение опорного плана именно методом минимального элемента.
А поп поводу ошибок, спасибо, буду думать, исправлять.

Дальше, планирую через потенциалы привести к оптимальному, но это уже другая история)
0
Ev_Hyper
Заблокирован
02.01.2014, 22:19 #6
Цитата Сообщение от Lotus34 Посмотреть сообщение
Дальше, планирую через потенциалы привести к оптимальному, но это уже другая история)
Я когда то программировал этот метод, с зацикливанием пришлось повозиться
0
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
03.01.2014, 12:09  [ТС] #7
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Я когда то программировал этот метод, с зацикливанием пришлось повозиться
Я готов к таким трудностям, буду стараться, для себя все же, а не для какого либо препода)
0
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
04.01.2014, 12:58  [ТС] #8
Ну вот, поправил код, а теперь при закрытой задаче он добавляет нормально строку, но не идет дальше и не считает(
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
#include <iostream>
#include <stdio.h>
#include <windows.h>
using namespace std;
int i,j;
int M,N;
int n,m;//Размерность задачи
float *a;  //адрес массива запасов поставщиков
float *b;  //адрес массива потребностей потребителей
float **C; //адрес массива(двумерного) стоимости перевозки
float **X;//адрес массива(двумерного) плана доставки
 
//void zapolnenie()
//{
//}
 
 
 
int main()
{
    SetConsoleCP(1251);
SetConsoleOutputCP(1251);
    N=n;
    M=m;
    cout<<"Введите колличество поставщиков:  ";// Вводим колличество поствщиков
    cin>>N;
        cout<<"\n";
    cout<<"Введите колличество потребителей: ";// Вводим колличество потребителей
    cin>>M;
    cout<<"\n";
    a = new float[N+3];//+3
    // Вводим запасы поставщиков 
 
 
    for(i=0;i<N;i++)
    {
        cout<<"Введите запасы "<<i+1<< " поставщика: ";
        cin>>a[i];
    }
        cout<<"\n";
 
    // Вводим запасы потребителей
    b=new float[M+3];//+3
 
    for(j=0;j<M;j++)
    {
        cout<<"Введите потребность "<<j+1<< " потребителя: ";
        cin>>b[j];
    }
        cout<<"\n";
float** C=new float*[N+3];
for (i=0;i<N+3; i++)
C[i]=new float[M+3];//+3
 
    // Вводим массив стоимости.
    
         for(i=0;i<N;i++)
         
          for(j=0;j<M;j++)
          {
              cout<<"Введите стоимость перевозки от "<<i+1<<" поставщика к "<<j+1<<"  потребителю:  ";
              cin>>C[i][j];
          }
 //Двумерный массив для Доставки:
        X=new float*[N+1+2];//выделяем память под массив адресов начала строк
        for(int i=0;i<N+1+2;i++)
           X[i]=new float[M+1+2];//выделяем память для каждой строки
       /*
        В последней строке(столбце) массива Х будем записывать
        сумму заполненных клеток в соответствующем столбце(строке)
       */
        for(int i=0;i<N+1;i++)
          for(int j=0;j<M+1;j++)
            {
               X[i][j]=-1;//вначале все клетки не заполнены
               if(i==N)X[i][j]=0;//сумма заполненных клеток в j-м столбце
               if(j==M)X[i][j]=0;//сумма заполненных клеток в i-й строке
            }
 
//  zapolnenie();
float Sa=0;
float Sb=0;
for(int i=0;i<N;i++)//находим суммарные запасы
{
    Sa=Sa+a[i];
}
 
for( j=0;j<M;j++)//находим суммарную потребность
{
    Sb=Sb+b[j];
}
 
 
if(Sa==Sb)cout<<"Транспортная задача - закрытая.";
     else
     {
       cout<<"Транспортная задача - открытая. \n";
 
        if(Sa>Sb)
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного потребителя ";
 
             M++; 
             for( i=0;i<N;i++)
                C[i][M-1]=0;//стоимость перевозки фиктивному потребителю равна нулю
             b[M+1]=Sa-Sb;//спрос фиктивного потребителя
           }
        else
         {
           cout<<"Преобразуем задачу в закрытую путём добавления фиктивного поставщика ";
             N++; 
           
             for(int j=0;j<M;j++)
                   C[N-1][j]=0;//стоимость перевозки от фиктивного поставщика равна нулю
                   a[N+1]=Sb-Sa;//запас фиктивного поставщика
          }
       }
        cout<<endl;
         for(i=0;i<N;i++){
          for(j=0;j<M;j++)
          {
              cout<<C[i][j]<<" ";
          }
          cout<<endl;
         }
//-----------------Метод минимального элемента:
        int im;
        int jm;
        int kk=0;
        float Sij=0;
        do
        {
           int Cmin=-1;
           for(int i=0;i<N;i++)
             for(int j=0;j<M;j++)
               if(X[N][j]!=b[j])//если не исчерпана Потребность Bj
                 if(X[i][M]!=a[i])//если не исчерпан Запас Аі
                    if(X[i][j]<0)//если клетка ещё не заполнена
                      {
                        if(Cmin==-1)//если это первая подходящая ячейка
                           {
                            Cmin=C[i][j];
                            im=i;
                            jm=j;
                           }
                        else //если это не первая подходящая ячейка
                          if(C[i][j]<Cmin)//если в ячейке меньше,чем уже найдено
                            {
                              Cmin=C[i][j];
                              im=i;
                              jm=j;
                             }
                        }
                
               X[im][jm]=min(a[im]-X[im][M],b[jm]-X[N][jm]);//выбираем поставку
               X[N][jm]=X[N][jm]+X[im][jm];//добавляем поставку jm-му потребителю
               X[im][M]=X[im][M]+X[im][jm];//добавляем поставку im-му поставщику
               Sij=Sij+X[im][jm]; //Подсчёт суммы добавленых поставок
               
              
        } while(Sij<max(Sa,Sb));//условие продолжения
 
        int L=0;
        for(int i=0;i<N;i++)
          for(int j=0;j<M;j++)
            if(X[i][j]>=0)L++;//подсчёт заполненных ячеек
        int d=M+N-1-L;//если d>0,то задача - вырожденная,придётся добавлять d нулевых поставок
        int d1=d;//запоминаем значение d
            cout<<"\n";
        cout<<" Начальный опорный план: \n";
            cout<<"\n";
         for(int i=0;i<N;i++)
         {
          for(int j=0;j<M;j++)
          { 
              if (X[i][j]==-1)
                  X[i][j]=0;
 
              cout<<X[i][j]<<" \t ";
          }
 
 
 
 
            cout<<"\n";
        }
         int Sum=0;
 for(int i=0;i<N;i++)
         {
          for(int j=0;j<M;j++)
          {   
              Sum+=X[i][j]*C[i][j];
          }
 }
    cout<<"\n";
 cout<<"Сумма перевозок равно:   "<<Sum;
cout<<"\n";
 
//       return 0;
system("pause");
}
Добавлено через 7 минут
Насколько я понимаю, проблема с массивом X и я видимо снова накосячил с индексацией.
0
Ev_Hyper
Заблокирован
04.01.2014, 14:50 #9
Цитата Сообщение от Lotus34 Посмотреть сообщение
Насколько я понимаю, проблема с массивом X и я видимо снова накосячил с индексацией.
Не думаю, что тут ошибка в индексации.
Вы для поставок создаете отдельный массив X?
Мне не нравиться ваш выход из цикла. И не совсем ясна вот эта строчка:
C++
1
X[im][jm]=min(a[im]-X[im][M],b[jm]-X[N][jm]);
Вы должны не просто присвоить меньшее из значений, а "обнулить" его.
C++
1
2
3
X[N][jm]=X[N][jm]+X[im][jm];//добавляем поставку jm-му потребителю
X[im][M]=X[im][M]+X[im][jm];//добавляем поставку im-му поставщику
 Sij=Sij+X[im][jm]; //Подсчёт суммы добавленых поставок
Что вы хотите тут сделать?
0
Lotus34
5 / 6 / 1
Регистрация: 26.10.2012
Сообщений: 124
04.01.2014, 15:21  [ТС] #10
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Что вы хотите тут сделать?
Ну, если честно, то данный фрагмент не моих рук дело. Данное задание было "парным", но второй член команды решился взять реализацию на с++ на себя, т.к я не очень в си и хотел реализовать через маткад.
Но его идея прогорела и мне достался на треть рабочий код, который только считал закрытые задачи 2 на 2.
Все начало кода , все моменты с внесением данных я поправил и код начал считать закрытые задачи любого размера.
Потом, с вашей помощью, код начал подводить задачи с открытого типа к закрытому, но дальше не считает.
Мне , если честно, самому жуть как не нравиться , но когда я начал пытаться сделать с нуля, то запутался вконец и перестало работать абсолютно все, ну я и решил помучатся с более или менее рабочим куском кода от моего товарища.
0
Ev_Hyper
Заблокирован
04.01.2014, 16:02 #11
Цитата Сообщение от Lotus34 Посмотреть сообщение
Мне , если честно, самому жуть как не нравиться , но когда я начал пытаться сделать с нуля, то запутался вконец и перестало работать абсолютно все, ну я и решил помучатся с более или менее рабочим куском кода от моего товарища.
Советую написать заново, алгоритм метода довольно простой.
Но можно попробывать переделать этот. Так что пробуем переделать?

Цитата Сообщение от Lotus34 Посмотреть сообщение
Но его идея прогорела и мне достался на треть рабочий код, который только считал закрытые задачи 2 на 2.
Все начало кода , все моменты с внесением данных я поправил и код начал считать закрытые задачи любого размера.
странно, если он был рабочий, то привидением к закрытой задачи его "не испортишь".

Добавлено через 13 минут
Вот так правильнее будет заполнять опорный план:
C++
1
2
3
4
5
6
7
8
9
10
11
12
 if(a[im]>=b[jm]){
 
                   a[im]-=b[jm];
                   X[im][jm]=b[jm];
                   b[jm]=0;
               }
               else if(a[im]<b[jm]){
 
                   b[jm]-=a[im];
                   X[im][jm]=a[im];
                   a[im]=0;
               }
(если я правильно понял назначение X)

теперь останется только повозиться с условиями выбора максимума и выхода из цикла.

И какая разница первая ячейка или нет?

Добавлено через 8 минут
Условия, наверное, можно как-то так совместить:
C++
1
2
3
4
5
6
         if(X[N][j]!=0 && X[i][M]!=0 && X[i][j]==-1 && C[i][j]<Cmin)
                            {
                              Cmin=C[i][j];
                              im=i;
                              jm=j;
                             }
Добавлено через 9 минут
нет, условия будут немного не такие. Вы же храните поставки в разных массивах:
C++
1
if(b[j]!=0 && a[i]!=0 && X[i][j]==-1 && C[i][j]<Cmin)
1
Taatshi
Администратор
11468 / 4933 / 252
Регистрация: 05.04.2011
Сообщений: 13,587
Записей в блоге: 2
04.01.2014, 19:03 #12
Lotus34, не нужно цитировать все предыдущие сообщения собеседника, тем более полностью. Пользуйтесь кнопкой "Ответить" внизу темы.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2014, 19:03
Привет! Вот еще темы с ответами:

Создать динамический массив (Если чётных чисел больше, то массив должен быть укорочен на 2 элемента) - C++
Создать динамический массив из 8 случайных целых чисел из отрезка и вывести его на экран . Если в массиве чётных чисел оказалось...

Массив и память. Как создать динамический массив? - C++
не могу исправить ошибки. И нужен динамический массив я что-то попробовала для его создания но ничего не вышло #include &quot;stdafx.h&quot; ...

Двумерный массив (поменять статический массив на динамический) - C++
Нужно поменять статический массив на динамический с выделением памяти #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; ...

Переделать динамический массив на статический массив - C++
#include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std; int main() { int dim, counter_1 = 1, counter_2 =...


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

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

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