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

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

Войти
Регистрация
Восстановить пароль
 
Sheewa
0 / 0 / 0
Регистрация: 14.02.2013
Сообщений: 20
#1

Легкая переделка для использования с двумерным массивом - C++

01.10.2013, 10:01. Просмотров 254. Ответов 2
Метки нет (Все метки)

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



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.h>
#include <time.h>
 
double WorkMatr(int *a, int j)
{
    int min = *a;
    int max = min;
    double n;
    for (int i = 0; i < j; i++) 
    {
      if (*(a+i) > max) max = *(a+i);                   
      if (*(a+i) > 0 && *(a+i) < min) min = *(a+i);
    }
    n=min+max;
    n/= 2;
    cout << "(" << min << "+" << max <<")/2=";
    return n;
}
 
 
int main() 
{
    int j=8, i, min, max; double n;
    int *a=new int[j];
    srand(time(NULL));
    cout << "Array:" << endl;
    for (i = 0; i < j; i++) 
    {
        a[i] = rand() % 100-50;
        cout << a[i] << " ";
    }
    cout << endl;
    n=WorkMatr(a,j);
    cout << n << endl;
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2013, 10:01     Легкая переделка для использования с двумерным массивом
Посмотрите здесь:

Ошибка "неверный тип для индекса массива" при работе с двумерным массивом - C++
Возникла вот такая проблемы при выполнении работы: int step_right(int *a,int n,int m,int i,int j){ int flower = 0; if...

Координатная плоскость двумерным массивом - C++
Здравствуйте! скажите пожалуста можно ли сдлелать некий аналог координатной плоскости используя двумерный массив. То есть, чтобы имея...

ассоциативный массив map c двумерным массивом - C++
Искал информацию в интернете но безрезультатно. Необходимо сделать ассоциативный массив с со строковым ключом и двумерным массивом 3х3 в...

Работа с двумерным массивом - разобрать строку кода - C++
Изучаю С++ по книге Шилдт Г.(базовый курс 3-е издание). В теме двумерных массивов столкнулся со строкой, над которой сколько бы не ломал...

Создание типа данных схожего с двумерным массивом - C++
Изучаю сейчас ООП в С++, и в качестве жертвы выбрал создание нового типа данных аля матрица. Проблема в том, как сделать, чтобы с ним можно...

Ввести продажи книг за 3 года, пользуясь двумерным массивом - C++
Я только что здесь отписывался с этим заданием, но у меня возник еще один вопрос. Моя задача сделать прогу, которая предлагает пользователю...

Ошибка с памятью при работе с динамическим двумерным массивом - C++
Вроде всё правильно, но в ходе работы программа выдаёт ошибку(на скрине). Дело в двумерном динамическом массиве. Ниже код с функцией, куда...

Вывод числа из файла с двумерным массивом, но только один раз - C++
Здравствуйте. уважаемые форумчане. Имеется такая проблема (в литературе пока решения не встречал и в интернетах тоже). Есть инпут...

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

Объяснить разницу между массивом типа char и строкой в стиле Си (нюансы использования нуль-терминатора) - C++
Господа, появился такой вопрос: какое место занимает \0 в массиве charов? В данном коде пытался выйти из цикла по достижении...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
01.10.2013, 11:00     Легкая переделка для использования с двумерным массивом #2
функция для двумерного массива:
C++
1
double WorkMatr(int **a, int w, int h);
w - ширина массива
h - высота
Sheewa
0 / 0 / 0
Регистрация: 14.02.2013
Сообщений: 20
01.10.2013, 11:01  [ТС]     Легкая переделка для использования с двумерным массивом #3
Все, разобрался. Если кому-то интересно:

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
#include <iostream.h>
#include <time.h>
#include <iomanip.h>
 
double WorkMatr(int *a, int j)
{
    int min = *a;
    int max = min;
    double n;
    for (int f = 0; f < j; f++) 
    {
      if (*(a+f) > max) max = *(a+f);                  
      if (*(a+f) < min) min = *(a+f);                 
    }
    n=min+max;
    n/= 2;
    cout << "(" << min << "+" << max <<")/2=";
    return n;
}
 
 
int main() 
{
    int j, i, min, max; double n;
    int a[4][8];
    srand(time(NULL));
    cout << "Array:" << endl;
    for (i = 0; i < 4; i++) {
        for (j = 0; j < 8; j++){
        a[i][j] = rand() % 100-50;
        cout <<setw (4)<< a[i][j];
    }cout<< endl;}
    cout << endl;
    for (i = 0; i < 4; i++) 
    {n=WorkMatr(*(a+i),8);
    cout << n << endl;}
    system("pause");
}
Ответ Создать тему
Опции темы

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