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

Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой - C++

Восстановить пароль Регистрация
 
Александр26
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 95
18.05.2013, 19:41     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #1
Дана динамическая матрица размера N*M (N и M вводятся). Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2013, 19:41     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой
Посмотрите здесь:

[C++] Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы C++
Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы C++
определить номера столбцов содержащих только отрицательные элементы матрицы n x m C++
C++ Среди столбцов матрицы А найти столбец, содержащий минимальное произведение своих элементов и принять этот столбец за вектор X
C++ Среди тех строк целочисленной матрицы, которые содержат только нечетные элементы, найти строку с максимальной суммой модулей элементов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kalpakk
 Аватар для kalpakk
13 / 13 / 1
Регистрация: 02.07.2011
Сообщений: 62
18.05.2013, 19:57     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #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
#include <iostream>
using namespace std;
int main()
{
   float **mass,n,m;
   cout<<"n = ";cin>>n;
   cout<<"m = ";cin>>m;
   mass= new float*[n];
   for (int i=0;i<n;i++)
      mass[i]=new float[m];
   for (int i=0;i<n;i++)
      for (int l=0;l<m;l++)
         {
         cout<<"a["<<i<<"]["<<l<<"] = ";
         cin>>mass[i][l];
         }
   cout<<"\n\n";
   float max=0;
   for (int i=0;i<n;i++)
      max+=mass[i][0];
 
   for (int i=1;i<n;i++)
      {
      float tmp=0;
      for (int l=0;l<m;l++)
         {
          tmp+=mass[l][i];
         }
      if (tmp>max) max=tmp;
      }
   cout<<max;
return 0;
}
Александр26
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 95
18.05.2013, 20:00  [ТС]     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #3
mass=new float*[n]; тут expression in new-declarator must have integral or enumeration type
Ded_Vasilij
 Аватар для Ded_Vasilij
229 / 211 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
18.05.2013, 20:00     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #4
kalpakk, похоже на правду.

Александр26, а причем здесь файлы?
kalpakk
 Аватар для kalpakk
13 / 13 / 1
Регистрация: 02.07.2011
Сообщений: 62
18.05.2013, 20:00     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #5
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
kalpakk, похоже на правду.
Александр26
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 95
18.05.2013, 20:01  [ТС]     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #6
нужно через файлы делать, бинарные желательно
Ded_Vasilij
 Аватар для Ded_Vasilij
229 / 211 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
18.05.2013, 20:06     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #7
int на float замените
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
void del_matrix(int** &matrix, int size) //освобождение памяти выделенной под массив
{
    for (int i = 0; i < size; i++)
    {
        delete [] matrix[i];
    }
    delete [] matrix;
    matrix = 0;
}
 
int ** new_matrix(int size)  // выделение памяти под целочисленный массив n*n
{
    int** matrix = 0;
    int i = 0;
    try 
    {
        matrix = new int* [size];
        for (; i < size; i++)
        {
            matrix[i] = new int [size];     
        }
        return matrix;
    }
    catch(bad_alloc e)
    {
        cerr << e.what();
        del_matrix(matrix,i);
    }
}
 
void cin_matrix(int** matrix, int size)//ввод матрицы
    /*int** matrix - двумерный динамический массив
    int size - размер матрицы
    */
{
    for (int i = 0; i < size; i++)
        for (int j = 0; j < size; j++)
        {
            cin >> matrix[j][i];
        }
    cout << endl;
}
 
void print_matrix(int** matrix, int size) //вывод матрицы
{
    for (int i = 0; i < size; i++)
    {
        for (int j = 0; j < size; j++)
        {
            cout << matrix[j][i] << " ";
        }
        cout << endl;
    }
}
Добавлено через 3 минуты
Цитата Сообщение от Александр26 Посмотреть сообщение
mass=new float*[n]; тут expression in new-declarator must have integral or enumeration type
kalpakk, у Вас косяк - размеры должны быть целыми, а Вы их вещественными сделали, вот и ошибка.
Александр26, сделайтe int n,m и будет Вам счастье
kalpakk
 Аватар для kalpakk
13 / 13 / 1
Регистрация: 02.07.2011
Сообщений: 62
18.05.2013, 20:09     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #8
Цитата Сообщение от Ded_Vasilij Посмотреть сообщение
kalpakk, у Вас косяк - размеры должны быть целыми, а Вы их вещественными сделали, вот и ошибка.
Александр26
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 95
18.05.2013, 20:45  [ТС]     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #9
и нужно через бинарный файл..
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2013, 17:45     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой
Еще ссылки по теме:

C++ Дана матрица размера MxN. Поменять местами столбец с номером N и первый из столбцов, содержащих только отрицательные элементы.
C++ Вывести номера столбцов матрицы, содержащих только отрицательные элементы (Pascal -> C++)
Элементы столбцов матрицы, не содержащих положительных элементов, заменить суммой их цифр C++

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

Или воспользуйтесь поиском по форуму:
Александр26
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 95
21.05.2013, 17:45  [ТС]     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой #10
`bad_alloc' has not been declared вот что выдает!
Yandex
Объявления
21.05.2013, 17:45     Среди столбцов матрицы, содержащих только элементы в диапазоне от 0 до 10, найти столбец с максимальной суммой
Ответ Создать тему
Опции темы

Текущее время: 12:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru