Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 31

Как передать двумерный массив функции?

26.06.2015, 13:43. Показов 818. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые форумчане, подскажите пожалуйста как передать двумерный массив в функцию? Как то самому не получается разобраться.... Заранее благодарен.

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
#include<iostream>
using namespace std;
 
void pole(char*, int, int);
 
int main()
{
    setlocale(LC_ALL, "rus");
    const int x=25, y=50;
 
    char Array[x][y];
 
    pole(Array, x, y);
 
    system("pause>>void");
    return 0;
}
 
void pole(char* Massiv, int a, int b)
{
 
    
    for(int i=0;i<=a-1; i++)
    {
      for(int j=0;j<=b-1; j++)
          (j>48 || i>23 || i<1 || j< 1 ? Massiv[i][j]='#' : Massiv[i][j]=' ');
    }
     
    for(int i=0;i<=a-1; i++)
    {
      for(int j=0;j<=b-1; j++)
          cout<<Massiv[i][j];
      cout<<endl;
    }
 
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.06.2015, 13:43
Ответы с готовыми решениями:

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

Передать двумерный массив функции
Скажите, пожалуйста, как я могу передать двумерный массив функции, которая с ним поработает, а потом вернет мне его? int...

Не могу разобраться как передать корректно передать массив из функции в функцию
//--------------------------------------------------------------------------- #pragma hdrstop ...

13
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,246
26.06.2015, 13:47
Ознакомьтесь с вот этим образцом. Там все есть:
Образцы (шаблоны) программ для типовых задач
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
26.06.2015, 14:19
Пример:
C++
1
void transfer_array (int *arr, int n);
Это прототип функции, в которую передаётся динамический массив с размерностью n;

Добавлено через 9 минут
C++
1
void transfer_array (int *arr, int n, int m);
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
26.06.2015, 14:20
JoMalcolm, какой идиот вас этому:
Цитата Сообщение от JoMalcolm Посмотреть сообщение
C++
1
system("pause>>void");
учит?
0
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 31
26.06.2015, 14:24  [ТС]
Что плохого в system("pause>>void"); ?
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
26.06.2015, 14:27
JoMalcolm, Так никто не делает. Либо пишите так:
C++
1
system ("pause");
или используйте:
C++
1
2
#include <conio.h>
   _getch();
можно ещё:
C++
1
cin.get();
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
26.06.2015, 14:28
JoMalcolm, ты знаешь что делает эта запись?
0
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 31
26.06.2015, 14:36  [ТС]
system("pause>>void"); ? То же самое, что и system ("pause"); Только при этом нет надпись "Нажмите любую кнопку". Я часто видел, что люди пишут в своих программах так...
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
26.06.2015, 14:38
JoMalcolm, В таком случае используют
Цитата Сообщение от isobo531 Посмотреть сообщение
#include <conio.h>
_getch();
Надписи "для продолжения нажмите любую клавишу..." нет и выглядит такая запись как-то лучше.
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
26.06.2015, 14:45
Цитата Сообщение от JoMalcolm Посмотреть сообщение
system("pause>>void"); ? То же самое, что и system ("pause"); Только при этом нет надпись "Нажмите любую кнопку". Я часто видел, что люди пишут в своих программах так...
На экране не будет надписи, эта надпись будет добавляться в файл void каждый раз при запуске программы. Ни в Windows, ни в Linux нет консольного устройства void.
Просто один идиот на ютубе возомнил себя учителем. Теперь его "труды" используют все кто смотрел его уроки.
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
26.06.2015, 14:47
Цитата Сообщение от JoMalcolm Посмотреть сообщение
system("pause>>void"); ? То же самое, что и system ("pause"); Только при этом нет надпись "Нажмите любую кнопку". Я часто видел, что люди пишут в своих программах так...
запуск консольной программы по имени pause
с перенаправлением её вывода в файл по имени void в режиме "дозаписать".

вы действительно не увидете надписи
в консольном окошке "для продолжения нажмите любую кнопку..."

потому что, после перенаправления вывода,
эта надпись улетела в файл.

по окончанию работы программы,
вы можете зайти в рабочий каталог, и увидеть этот файл,
с знакомой вам надписью внутри.
0
0 / 0 / 0
Регистрация: 26.06.2015
Сообщений: 1
26.06.2015, 14:54
void pole(char [,]Massiv, int a, int b)
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
26.06.2015, 14:58
Цитата Сообщение от Бага Посмотреть сообщение
void pole(char [,]Massiv, int a, int b)
Похоже я знаю кто изобретатель "pause>>void".
0
0 / 0 / 0
Регистрация: 12.03.2014
Сообщений: 31
26.06.2015, 15:36  [ТС]
Спасибо большое, что объяснили

Добавлено через 37 минут
Дорогие друзья, всем спасибо. Вот как то так получилось:
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
#include<iostream>
#include <conio.h>
using namespace std;
 
void pole(char Massiv[][50], int a);
 
int main()
{
    setlocale(LC_ALL, "rus");
 
    char Array[25][50];
 
    pole(Array, 25);
 
    _getch();
    return 0;
}
 
void pole(char Massiv[][50], int a)
{
 
    
    for(int i=0;i<=a-1; i++)
    {
      for(int j=0;j<=50-1; j++)
          (j>48 || i>23 || i<1 || j< 1 ? Massiv[i][j]='#' : Massiv[i][j]=' ');
    }
     
    for(int i=0;i<=a-1; i++)
    {
      for(int j=0;j<=50-1; j++)
          cout<<Massiv[i][j];
      cout<<endl;
    }
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.06.2015, 15:36
Помогаю со студенческими работами здесь

Как передать двумерный массив в функцию?
например у меня есть двумерный массив 5 на 5.мне нужна функция в которой будет запрашиваться столбец и строка а затем элементу из этого...

Как передать в функцию указатель на двумерный массив?
Есть массив int arr, как передать в функцию указатель на него, чтобы при изменения массива в функции он изменялся везде?

Как передать в функцию двумерный динамический массив?
#include &lt;iostream&gt; #include&lt;time.h&gt; #include&lt;cstdlib&gt; using namespace std; void zap(int array, int n) { ...

Как передать динамический двумерный массив в функцию
Имеется массив int main() { setlocale(LC_ALL, &quot;rus&quot;); int n, m; cout &lt;&lt; &quot;Введите количество строк: &quot;; cin &gt;&gt;...

Как передать в функцию двумерный массив указателей на класс?
у меня есть std::vector&lt;Monster*&gt; monsters; Rect *pole; int pacmen_distance; Monster и Rect два...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru