Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Sonya
0 / 0 / 0
Регистрация: 04.09.2015
1

В заданной матрице переставить для каждого столбца последние и максимальные элементы

10.02.2009, 02:03. Просмотров 710. Ответов 1
Метки нет (Все метки)

В заданной матрице переставить для каждого столбца последние и максимальные элементы. сложить положительные элементы последней строки полученной матрицы. Размерность матрицы не более чем 24*24. формат числа ±цц.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2009, 02:03
Ответы с готовыми решениями:

В матрице P(N;M) найти суму елементов каждого столбца!
В матрице P(N;M) найти суму елементов каждого столбца! есть программа не могу...

Переставить все столбцы и элементы к-го столбца.
Переставить все столбцы и элементы к-го столбца.

Для каждого столбца массива определить сумму двух элементов
Доброе время суток, участники форума. Не могу разобраться почему программа не...

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

Определить максимальные элементы каждого столбца матрицы
Определить максимальные по значению элементы каждого столбца матрицы,...

1
ISergey
Maniac
Эксперт С++
1409 / 920 / 148
Регистрация: 02.01.2009
Сообщений: 2,749
Записей в блоге: 1
10.02.2009, 02:45 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
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
#include <iostream>
using namespace std;
 
int **arrCreate(const int,const int);
void arrFree(int**);
void arrInput(int**);
void arrOut(int**);
int getMaxMinIndexRow(int**,int,bool)/*true = max, false = min */;
int main()
{
    const int row = 3;
    const int col = 3;
    int **arr = arrCreate(row,col);
    arrInput(arr);
    arrOut(arr); cout<<endl;
 
    for(int i = 0; i < row; i++)
    {
        int index = getMaxMinIndexRow(arr,i,true);
        int buff = arr[index][i];
        arr[index][i] = arr[row-1][i];
        arr[row-1][i] = buff;
    }
    arrOut(arr);
 
    int sum = 0;
    for(int i = 0; i < col; i++)
        if(arr[row-1][i] > 0) sum += arr[row-1][i];
 
    cout<<endl<<"Sum: "<<sum<<endl;
 
    arrFree(arr);
    return 0;
}
 
int getMaxMinIndexRow(int **arr,int row,bool maxmin)//true = max, false = min
{
    int alen = static_cast<int>(_msize(arr)/sizeof(int));
    int _maxmin = arr[0][row];
    int index   = 0;
    for(int i = 1; i < alen; ++i)//!i = 1;
    {
        if(maxmin)
        {
            if(_maxmin < arr[i][row])
            {
                _maxmin = arr[i][row]; //max elem
                index   = i;
            }
        }
        else
        {
            if(_maxmin > arr[i][row])
            {
                _maxmin = arr[i][row]; //min elem
                index   = i;
            }
        }
    }
    return index;
}
 
int **arrCreate(const int row,const int col)
{
    if((row > 0))
    {
        int **arr = new int*[row];
        for(int i = 0; i < row; ++i)
        {
            arr[i] = new int[col];
        }
        return arr;
    }
    else
        return 0;
}
 
void arrFree(int **arr)
{
    if(arr != 0)
    {
        int lenrow = static_cast<int>(_msize(arr)/sizeof(int));
        for(int i = 0; i < lenrow; ++i)
            delete[] arr[i];
        delete[] arr;
        arr = 0;
    }
}
 
void arrOut(int **arr)
{
    if(arr != 0)
    {
        int lenrow  = static_cast<int>(_msize(arr)/sizeof(int));
        int lencol  = static_cast<int>(_msize(arr[0])/sizeof(int));
        for(int i = 0; i < lenrow; ++i)
        {
            cout<<"[ ";
            for(int j = 0; j < lencol; ++j)
                cout<<arr[i][j]<<" ";
            cout<<"]"<<endl;
        }
    }
} 
 
void arrInput(int **arr)
{
    if(arr != 0)
    {
        int lenrow  = static_cast<int>(_msize(arr)/sizeof(int));
        int lencol  = static_cast<int>(_msize(arr[0])/sizeof(int));
        for(int i = 0; i < lenrow; ++i)
            for(int j = 0; j < lencol; ++j)
            {
                cout<<"arr["<<i<<"]"<<"["<<j<<"] = ";
                cin>>arr[i][j];
            }
    }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2009, 02:45

Создать в матрице два дополнительных столбца.В первый из них поместить минимальные элементы, а во второй максимальные элементы каждой строки
Дан произвольный двумерный массив целых чисел. Создать в нем два...

Найти максимальные элементы каждого столбца двумерного массива А...
Найти максимальные элементы каждого столбца двумерного массива А. Сформировать...

определить максимальные элементы каждого столбца и записать их в отдельный масси
В матрице A определить максимальные элементы каждого столбца и записать их в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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