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

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

Войти
Регистрация
Восстановить пароль
 
володік
0 / 0 / 0
Регистрация: 17.01.2012
Сообщений: 15
#1

динамические массивы - C++

22.01.2012, 19:32. Просмотров 442. Ответов 3
Метки нет (Все метки)

Задали квадратную матрицу, все элементы которой равны единице. Написать функцию void func (int ** arr, int n), которая заполняет заштрихована пиксели нулями. Размер массива вводится с клавиатуры.
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2012, 19:32     динамические массивы
Посмотрите здесь:

Динамические массивы - C++
Если у меня есть 2 двумерных динамических массива один х1 размерностью m*n, а другой х2 размерностью m*(n+1), то что происходит с ними...

Динамические массивы - C++
3. Постановка задачи 1. Сформировать динамический одномерный массив, заполнить его случайными числами и вывести на печать. 2. Выполнить...

динамические массивы - C++
помогите разобраться с динамическими массивами . Надо составить программу которая: Изменяла порядок следования элементов массива на...

Динамические массивы - C++
Помогите сделать задание пожалуйста , люди. Никак не могу понять как это оживить это... Язык: С++ MS VS: Win32 Console...

Динамические массивы - C++
Добрый вечер! Проблема такая,плохо понимаю,как изменить в моей программе обычные массивы на динамические. Надеюсь,кто-то поможет и...

Динамические массивы - C++
int memory=MAX_PATH; char* htmlBuff =(char*) malloc(memory * sizeof(char)); for (int i=0 ; i<260 ; i++) htmlBuff='1'; ...

Динамические массивы - C++
Ребят,дело в том,возник вопрос по применению динамических массивов в программировании.Я так понял,что динамические массивы отличаются от...

Динамические массивы. - C++
Помогите пожалуйста сделать задачку. В ней должно быть меню, и использованы динамические массивы. В меню 3 пункта: 1. Преобразуйте...

Динамические массивы - C++
Дана целочисленная матрица размером N. Найти сумму наименьших элементов ее нечетных строк и наибольших элементов ее четных строк. Нужно...

Динамические Массивы - C++
Выручайте ребята :friends: 1. Сформировать динамический одномерный массив, заполнить его случайными числами и вывести на печать. ...

Динамические массивы - C++
пишу функции по сложению умножению делению и вычитанию полиномов void sub(){ int x,y; cout<<"vvod stepeni A(x): "; ...

Динамические массивы - C++
1. Добавить после каждого четного элемента элемент со значением 0 2. Добавить столбец в конец матрицы :-[пожалуйста


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
22.01.2012, 20:11     динамические массивы #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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <iomanip>
using namespace std;
 
// заполнение массива единицами
void fill_array_one( int**, size_t );
// заполнение массива по схеме
void fill_array_scheme( int**, size_t );
// печать массива
void print_array( int**, size_t );
 
 
int main() {
    size_t dimm;
    int **my_arr;
 
    cout << "Введите размерность квадратной матрицы" << endl;
    cin >> dimm;
 
    my_arr = new int *[ dimm ];
 
    for ( size_t i = 0; i < dimm; i++ )
        my_arr[ i ] = new int[ dimm ];
 
    cout << "Квадратная матрица заполнена единицами" << endl;
    fill_array_one( my_arr, dimm );
    print_array( my_arr, dimm );
 
    cout << "Квадратная матрица заполнена по схеме" << endl;
    fill_array_scheme( my_arr, dimm );
    print_array( my_arr, dimm );
 
    for ( size_t i = 0; i < dimm; i++ )
            delete[] my_arr[ i ];
 
        delete[] my_arr;
 
    return 0;
}
 
void fill_array_one( int** arr, size_t n ){
    for ( size_t i = 0; i < n; ++i )
            for ( size_t j = 0; j < n; ++j )
                arr[ i ][ j ] = 1;
}
 
void fill_array_scheme( int** arr, size_t n ){
    for ( size_t i = 0; i < n; ++i )
            for ( size_t j = 0; j < n; ++j )
                if ( i >= j )
                    arr[ i ][ j ] = 0;
}
 
void print_array( int** array, size_t n ) {
    for ( size_t i = 0; i < n; ++i ){
        for ( size_t j = 0; j < n; ++j )
            cout << setw(2) << array[ i ][ j ] ;
    cout << endl;
    }
}
Консоль
Введите размерность квадратной матрицы
8
Квадратная матрица заполнена единицами
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
Квадратная матрица заполнена по схеме
0 1 1 1 1 1 1 1
0 0 1 1 1 1 1 1
0 0 0 1 1 1 1 1
0 0 0 0 1 1 1 1
0 0 0 0 0 1 1 1
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0
володік
0 / 0 / 0
Регистрация: 17.01.2012
Сообщений: 15
22.01.2012, 21:04  [ТС]     динамические массивы #3
можно комментарии ???
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
22.01.2012, 21:28     динамические массивы #4
Прокомментировал все, что посчитал нужным комментировать.
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
// заполнение массива единицами
void fill_array_one( int**, size_t );
// заполнение массива по схеме
void fill_array_scheme( int**, size_t );
// печать массива
void print_array( int**, size_t );
 
int main() {
    size_t dimm;
    int **my_arr;
 
    cout << "Введите размерность квадратной матрицы" << endl;
    cin >> dimm;
    // создние одномерного массива указателей на одномерные массивы (на строки двумерного массива)
    my_arr = new int *[ dimm ];
    // выделение памяти под столбцы в каждой строке
    for ( size_t i = 0; i < dimm; i++ )
        my_arr[ i ] = new int[ dimm ];
 
    cout << "Квадратная матрица заполнена единицами" << endl;
    // заполняем массив единицами
    fill_array_one( my_arr, dimm );
    // печатаем массив
    print_array( my_arr, dimm );
 
    cout << "Квадратная матрица заполнена по схеме" << endl;
    // заполняем массив по схеме
    fill_array_scheme( my_arr, dimm );
    // печатаем массив
    print_array( my_arr, dimm );
 
    // очистка памяти занятой под столбцы каждой строки
    for ( size_t i = 0; i < dimm; i++ )
        delete[] my_arr[ i ];
 
    // удаление массива указателей на одномерные массивы (на строки двумерного массива) из памяти
    delete[] my_arr;
 
    return 0;
}
 
void fill_array_one( int** arr, size_t n ) {
    for ( size_t i = 0; i < n; ++i )
        for ( size_t j = 0; j < n; ++j )
            arr[ i ][ j ] = 1;
}
 
void fill_array_scheme( int** arr, size_t n ) {
    for ( size_t i = 0; i < n; ++i )
        for ( size_t j = 0; j < n; ++j )
            if ( i >= j )
                arr[ i ][ j ] = 0;
}
 
void print_array( int** array, size_t n ) {
    for ( size_t i = 0; i < n; ++i ) {
        for ( size_t j = 0; j < n; ++j )
            cout << setw( 2 ) << array[ i ][ j ];
        cout << endl;
    }
}
Yandex
Объявления
22.01.2012, 21:28     динамические массивы
Ответ Создать тему
Опции темы

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