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

О работе с динамическими двумерными (многомерными) массивами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести последовательность из цифр огромного числа http://www.cyberforum.ru/cpp-beginners/thread952337.html
Задание во вложении. Собственно код: #include <iostream> #include <math.h> using namespace std; double factorial(int to); double exponential(int to, int basis);
C++ Массив длиной 10 разделить на два массива четных и нечетных чисел массив длиной 10 разделить на два массива четных и нечетных чисел #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused #include <iostream> #include <ctime> #include <iomanip> http://www.cyberforum.ru/cpp-beginners/thread952317.html
Найти произведение нечетных чисел, делящихся на 3 C++
ввести с клавиатуры 10 элементов массива , отсортироваь их по убыванию ,сложить все четные и не четные ,найти произведение нечетных чисел делящихся на 3
C++ Выполнить программу с использованием пользовательских функций
Помогите переписать данную программу, но уже с использованием пользовательских функций. #include <vcl.h> #pragma hdrstop #include <iostream.h> #include <math.h> #include <tchar.h> void main(void) {
C++ Вводятся числа, пока не вводится 0, если его ввели, то программа вычисляет сумму всех введённых чисел http://www.cyberforum.ru/cpp-beginners/thread952295.html
в компьютер вводятся числа, пока не вводится 0, если его ввели, то программа вычисляет сумму всех введённых чисел
C++ Посчитать сумму n чисел Пожалуйста напишите программу, которая будет считать сумму n-чисел. подробнее

Показать сообщение отдельно
h_wolf
 Аватар для h_wolf
9 / 9 / 1
Регистрация: 24.01.2013
Сообщений: 211
11.09.2013, 13: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
#include <iostream>
 
using namespace std;
 
void Input(int**, int, int);
void Output(int**, int, int);
 
int main()
{
    setlocale(LC_CTYPE, "");
    int StrArr=0, CollArr=0;
 
    cout<<"Введите количество строк: ";
    cin>>StrArr;
    cout<<"Введите количество столбцов: ";
    cin>>CollArr;
    //создаем двумерный динамический массивж
    int** Arr = new int* [StrArr];              //Указатель на массив указателей (указывет на строку содержащую столбцы)
    for(int i=0; i<StrArr; i++)                 //В каждой строке создаем заданное количество столбцов
        Arr[i]=new int[CollArr];
 
    Input(Arr, StrArr, CollArr);
    Output(Arr, StrArr, CollArr);
 
    for(int i=0; i<StrArr; i++)                 //Удаляем столбцы
        delete [] Arr[i];
 
    delete [] Arr;                              //Удаляем строки
    return 0;
}
 
void Input(int** pArr, int strarr, int collarr)
{
    for(int i=0; i<strarr; i++){
        cout<<"Ввежите строку "<<i+1<<": ";
        for(int b=0; b<collarr; b++)
            cin>>pArr[i][b];
    }
}
 
void Output(int** pArr, int strarr, int collarr)
{
        for(int i=0; i<strarr; i++){
        cout<<"В строке "<<i+1<<": ";
        for(int b=0; b<collarr; b++)
            cout<<pArr[i][b]<<"\t";
        cout<<endl;
    }
}


Все работает прекрасно и нареканий нет. А можно ли сделать это проще и короче? Прошу учесть то что классов, шаблонов и прочего я еще не знаю Вся эта прелесть мне только предстоит (через две главы учебника)

Заранее прошу простить если такого рода вопросы на форуме неуместны.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru