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

Сформировать вектор из максимумов матрицы и упорядочить его по возрастанию

15.05.2015, 10:47. Показов 1911. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разработать алгоритм и написать программу на языке C++.
Задана матрица (двумерный массив) A размером N x М , состоящая из действительных элементов. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел. Где это необходимо ввести квадратную матрицу. Во всех вариантах вывести исходную матрицу в общепринятом виде и необходимые результаты работы программы.

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

Помогите решить данную задачу, пожалуйста.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.05.2015, 10:47
Ответы с готовыми решениями:

Упорядочить строки матрицы по возрастанию максимумов их элементов
Добрый день! срочно нужна помощь в решении задачи: Дана целочисленная прямоугольная матрица. Определить: 1)количество отрицательных...

Получить массив В, состоящий из отрицательных элементов матрицы А, и упорядочить его по возрастанию
Дана целочисленная матрица А размером . Получить массив В, состоящий из отрицательных элементов матрицы А. Отсортировать массив В по...

Упорядочить элементы строк матрицы по возрастанию, а сами строки по возрастанию суммы элементов
Дана матрица Х. Упорядочить элементы строк матрицы по возрастанию, а сами строки по возрастанию суммы элементов строк (использовать...

3
55 / 56 / 34
Регистрация: 29.12.2012
Сообщений: 478
15.05.2015, 13:25
часика через 4 приду сделаю....если актуально будет

Добавлено через 1 час 8 минут
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
#include "iostream"
#include <ctime>  
#include "iomanip"
 
using namespace std;
 
int main()
{   
 setlocale(LC_ALL,"Rus");
 srand(time(0)); // генерация случайных чисел 
 int N,M,vibor;
 cout<<"Введите кол-во строк в матрице N=";
 cin>>N;
 cout<<"\nВведите кол-во столбцов в матрице M=";
 cin>>M;
 // объявление двумерного динамического массива
 float **ptrarray = new float* [N];      // строки в массиве   
  for (int count = 0; count < N; count++)        
    ptrarray[count] = new float [M];    //  столбцы 
 cout<<"\nВведите 0 если хотите вручную заполнить матрицу\n"
       "или любую другую цифру если хотите авто заполнние\n"
       "Выбор:";
 cin>>vibor;
  if(vibor!=0)
   {
    for (int i = 0; i < N; i++)     
     for (int j = 0; j < M; j++)             
         ptrarray[i][j]=rand() % 100;
   }
  else
   {
       cout<<"\nЗаполняйте матрицу.\n";
     for (int i = 0; i < N; i++)     
      for (int j = 0; j < M; j++)
        { cout<<"элемент:["<<i<<"]["<<j<<"]=";
          cin>>ptrarray[i][j];}
   }
  cout<<"\nВаша матрица.\n";
   for (int i = 0; i < N; i++)  {   
      for (int j = 0; j < M; j++)
          cout<<setw(3)<<ptrarray[i][j];
      cout<<endl;}
  // высвобождение памяти отводимой под двумерный динамический массив:   
  for (int count = 0; count < N; count++)       
     delete [] ptrarray[count]; 
 system("pause");
 return 0;
}
задание 6 вечером получиш вечером если не забуду, пора тепать за свет плотить
1
0 / 0 / 0
Регистрация: 30.04.2015
Сообщений: 5
15.05.2015, 15:39  [ТС]
Спасибо, буду ждать.
0
55 / 56 / 34
Регистрация: 29.12.2012
Сообщений: 478
15.05.2015, 20:21
Лучший ответ Сообщение было отмечено ololoyev57 как решение

Решение

координаты максимумов.
А что с ними делать вывести?

Добавлено через 1 час 32 минуты
полученную сумму.
Чего с кем?

Добавлено через 24 секунды
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
#include "iostream"
#include <ctime>  
#include <vector>
#include<iterator>
 
#include "iomanip"
 
using namespace std;
 
int main()
{   
 setlocale(LC_ALL,"Rus");
 srand(time(0)); // генерация случайных чисел 
 int N,M,vibor,Max=-1000;
 cout<<"Введите кол-во строк в матрице N=";
 cin>>N;
 cout<<"\nВведите кол-во столбцов в матрице M=";
 cin>>M;
 // объявление двумерного динамического массива
 float **ptrarray = new float* [N];      // строки в массиве   
  for (int count = 0; count < N; count++)        
    ptrarray[count] = new float [M];    //  столбцы 
 cout<<"\nВведите 0 если хотите вручную заполнить матрицу\n"
       "или любую другую цифру если хотите авто заполнние\n"
       "Выбор:";
 cin>>vibor;
  if(vibor!=0)
   {
    for (int i = 0; i < N; i++)     
     for (int j = 0; j < M; j++)             
         ptrarray[i][j]=rand() % 100;
   }
  else
   {
       cout<<"\nЗаполняйте матрицу.\n";
     for (int i = 0; i < N; i++)     
      for (int j = 0; j < M; j++)
        { cout<<"элемент:["<<i<<"]["<<j<<"]=";
          cin>>ptrarray[i][j];}
   }
  cout<<"\nВаша матрица.\n";
   for (int i = 0; i < N; i++)  {   
      for (int j = 0; j < M; j++)
          cout<<setw(3)<<ptrarray[i][j];
      cout<<endl;}
cout<<endl<<endl;
   int *a=new int[N];                    //Буферный массив
for (int i = 0; i < N; i++) 
{a[i]=-1000;}
for (int k = 0;  k< N+1; k++){
     for (int i = 0; i < N; i++)  
         for (int j = 0; j < k;j++)
           {  
               if(ptrarray[i][j]>a[j])
                 {
                    a[j]=ptrarray[i][j];
                 }
           }
}    
 
vector<int> my_vector;   //создаем вектор
//vector<int>::iterator the_iterator;
cout<<"Неупорядочный вектор:\n";
    for (int i=0; i < N; i++) {   //заполнем буферным масивом
      my_vector.push_back(a[i]);
    }
 
 
    for (int i=0; i < N; i++) {   //выводим
      cout<<setw(3)<<my_vector[i];
    }
cout<<endl<<endl;
cout<<"Упорядочный вектор:\n";
vector<int> my_vec;    //создаем вектор который будет уподочным
    for (int i=0; i < N; i++) {   //заполнем буферным масивом
       my_vec.push_back(a[i]);
    }
for (int j=0; j < N-1; j++)    //Сортируем
 {for (int i=0; i < N-1; i++) {   
       if(my_vec[i]>my_vec[i+1] )
       {
          int temp=my_vec[i];
          my_vec[i]=my_vec[i+1];
          my_vec[i+1]=temp;
       }
    }
 }
    for (int i=0; i < N; i++) {   //выводим
      cout<<setw(3)<<my_vec[i];
    }
    cout<<endl<<endl;
  delete a; 
  // высвобождение памяти отводимой под двумерный динамический массив:   
  for (int count = 0; count < N; count++)       
     delete [] ptrarray[count]; 
 system("pause");
 return 0;
}
Добавлено через 34 секунды
Кроме тех 2 пунктов все сделанно!!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.05.2015, 20:21
Помогаю со студенческими работами здесь

Сформировать вектор из средних геометрических столбцов матрицы и отсортировать его по возрастанию
Организуйте ввод элементов матрицы С размером 3х7. Элементы матриц рассчитать по формуле i * j * rnd(d * n) , где i - номер строки матрицы...

Нужно построить вектор B по матрице A и упорядочить его по возрастанию числа отрицательных слагаемых в сумме (упоридочение оформить подпрограммой)
Дана матрица А размерности NxN. Построить вектор B, i-ый компонент которого Bi=Σ(от j=1 до N)Aij, затем упорядочить вектор B по возрастанию...

Составить одномерный массив из элементов побочной диагонали исходной матрицы, и упорядочить его по возрастанию
С клавиатуры вводится вещественная матрица NxN (N&lt;=17). Составить одномерный массив из элементов побочной диагонали исходного массива и...

Сформировать вектор из сумм эл-тов строк матрицы и найти его среднее квадратическое.
Сформировать вектор из сумм эл-тов строк матрицы и найти его среднее квадратическое. Матрица задана ур-ем i*j*rnd(d*n) i=7 j=3 d=8 n=13...

Сформировать вектор столбец заполнив его эл-ми побочной диагонали M, при этом четные ячейки матрицы заменить 0
Сформировать вектор столбец заполнив его элементами побочной диагонали M, при этом четные ячейки матрицы заменить на 0.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru