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

Добавление элементов в динамический двумерный массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вещественный массив и среднее арифметическое http://www.cyberforum.ru/cpp-beginners/thread814169.html
5. Вычислить среднее арифметическое элементов, расположенных в вещественном массиве до первого и после последнего нулевых значений.Вот мои мысли - сначала находим сумму элементов массива,потом когда элемент массива равен нулю, вычитаем из количества элементов массива единицу и благополучно находим среднее арифметические.Поделив сумму на оставшееся количество элементов.Проблема в том что...
C++ Проверка является ли строка вещественным числом, если да то записать его в вещественную переменную как узнать цифра или буква я знаю мне интересно вот, что например встретил я в строке цифру иду дальше в цикле записывая цифры в отдельную временную строку, потом сталкиваюсь с запятой и тоже пишу ее в нашу отдельную строку, в итоге я записал наше число в отдельную строку(пропарсил так сказать), и как мне теперь эту строку представить в вещественном типе или же в целом если число оказалось без... http://www.cyberforum.ru/cpp-beginners/thread814167.html
Разделяемая память C++
Добрый день!!! Столкнулся вот с какой проблемой, мне необходимо написать программу крестики-нолики через разделяемую память. А как это сделать я не знаю. Помогите пожалуйста, либо литературой, либо кодом. Буду приочень благодарен
Определить, является ли первая и последняя цифра числа одинаковой C++
Определить, является ли первая и последняя цифра числа одинаковой. на с++
C++ создать функцию удаления max и min эл-та массива http://www.cyberforum.ru/cpp-beginners/thread814137.html
Я написал почти всю программу в которой задание состоит следующим образом: Удалить максимальный и минимальный эл-т массива вот код#include <iostream> #include <cstdlib> #include <conio.h> #include <ctime> #include <math.h> using namespace std; void fillManual(int*,int);
C++ Можно ли в структуре создать строку с неуказанным размером? Можно ли в структуре создать строку с неуказанным размером? подробнее

Показать сообщение отдельно
Just_2D
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 22
20.03.2013, 23:22  [ТС]     Добавление элементов в динамический двумерный массив
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
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <iomanip>
 
using namespace std;
 
void arr_input(int *a, int n);
void arr_output(int *a, int n);
void arr_1D(int* &a, int &n);
 
 
void arr_2d_input(int **a, int n, int m);
void arr_2d_output(int **a, int n, int m);
void arr_2d_manipulation(int** &a, int n, int &m);
 
int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "Russian");
 
    cout << "Завдання 1." << endl;
    cout << "Знищити всi елементи з непарними iндексами." << endl;
    int n;
    cout << "Введiть кiлькiсть елементiв в масивi: ";
    cin >> n;
    static int *a = new int[n];
    arr_input(a, n);
    cout << "Отриманий масив: " << endl;
    arr_output(a, n);
    cout << endl;
    cout << "Масив пiсля обробки: " << endl;
    arr_1D(a, n);
    arr_output(a, n);
 
 
    cout << "\n\nЗавдання 2." << endl;
    cout << "Додати стовпчик пiсля стовпчика, що мiстить найбiльший елемент." << endl;
    cin >> n;
    int **arr_2d = new int * [n];
    int m;
    cin >> m;
    for(int i=0; i<n; i++)
        arr_2d[i] = new int[m];
    arr_2d_input(arr_2d, n, m);
    arr_2d_output(arr_2d, n, m);
    arr_2d_manipulation(arr_2d, n, m);
    cout << endl << endl;
    arr_2d_output(arr_2d, n, m);
 
 
    return 0;
}
 
 
void arr_input(int *a, int n)
{
    srand((unsigned int)time(NULL));
    for(int i=0; i<n; i++)
        a[i] = 1+rand()%500;
}
 
 
void arr_output(int *a, int n)
{
    for(int i=0; i<n; i++)
        cout << "a[" << i << "]=" << a[i] << ' ';
}
 
 
void arr_1D(int* &a, int &n)
{
    int cnt;
    cnt = n/2;
    int *b = new int[n-cnt];
    int i_b = 0;
    for(int i=0; i<n; i++)
        if (i%2 == 0)
        {
            b[i_b] = a[i];
            i_b++;
        }
        n -= cnt;
        delete[] a;
        a = b;
}
 
 
 
 
void arr_2d_input(int **a, int n, int m)
{
    for(int i=0; i<n; i++)
        for(int j=0; j<n; j++)
            a[i][j] = 1 + rand()%500;
}
void arr_2d_output(int **a, int n, int m)
{
    cout << setw(4);
    for(int i=0; i<n; i++)
    {
        for(int j=0; j<m; j++)
            cout << a[i][j] << setw(4);
        cout << endl;
    }
}
 
void arr_2d_manipulation(int** &a, int n, int &m)
{
    int i_max = 0, j_max = 0;
    for(int i=0; i<n; i++)
        for(int j=0; j<m; j++)
            if(a[i][j] > a[i_max][j_max])
            {
                i_max = i;
                j_max = j;
            };
 
    m += 1;
    int **tmp = new int * [n];
    for(int i=0; i<n; i++)
        tmp[i] = new int[m];
 
    for(int i=0; i<n; i++)
        for(int j=0; j<=j_max; j++)
            tmp[i][j] = a[i][j];
    for(int i=0; i<n; i++)
        tmp[i][j_max+1] = 1+rand()%9;
    for(int i=0; i<n; i++)
        for(int j=j_max+2; j<m; j++)
            tmp[i][j] = a[i][j-1];
 
    for(int i=0; i<n; i++)
        delete [] a[i];
    delete [] a;
    a = tmp;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru