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

Отсортировать строки двумерного массива по сумме четных элементов в порядке возрастания

24.01.2021, 10:46. Показов 2824. Ответов 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
int i, j;
  double temp; 
  int s_prev=0, s_now=0;
  for(int z=0; z<n; z++){
  int* ptr_arr=&a[z][0]; 
    for (int i = z; i < n; i++){
    for (int j = 0; j < m; j++){
    s_prev += *ptr_arr;
    s_now += a[i][j];}
  if(s_prev > s_now){   
  for(int k=0; k<m; k++)  {
     temp=a[i][k];   
     a[i][k]=*ptr_arr;  
     *ptr_arr=temp;                        
     ptr_arr++;  }
  ptr_arr-=m;  
 }
    s_now=0;
    s_prev=0;}
 }
 cout<<endl<<"Отсортированный массив: "<<endl;
    for (int i = 0; i < n; i++)
    {        
        for (int j = 0; j < m; j++)
            cout<<"   "<<a[i][j];
        cout<<endl;
    }
    return;
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.01.2021, 10:46
Ответы с готовыми решениями:

Расположить столбцы двумерного массива в порядке возрастания элементов k-ой строки
/--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #pragma hdrstop #include &lt;iostream&gt; ...

Переставить столбцы двумерного массива в порядке возрастания элементов 2-й строки
Нужно написать 2 программы. НУ хотя бы одну... Буду ооочень признателен. Пожаааалуйста!... Задача в дельфи: Переставить столбцы...

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

2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38167 / 21102 / 4307
Регистрация: 12.02.2012
Сообщений: 34,690
Записей в блоге: 14
24.01.2021, 12:34
Цитата Сообщение от reallybadonion Посмотреть сообщение
Как можно отредактировать данный код
- для начала, окружить его тэгами языка C++

Цитата Сообщение от reallybadonion Посмотреть сообщение
чтобы оно ориентировалось на четные элементы
- а что/кто здесь среднего рода (оно)?
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
24.01.2021, 13:32
Цитата Сообщение от reallybadonion Посмотреть сообщение
Нет конкретики
задание корректно. если чётное по расположению это специально указывается
Цитата Сообщение от reallybadonion Посмотреть сообщение
Я пытаюсь сделать по значению
именно так и нужно делать

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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int SumEvenRow(int *a, int m)
{
    int sum_even=0;
    for(int i = 0; i < m; i++)
        if(a[i]%2==0) sum_even+=a[i];
    return sum_even;
} 
 
int main()
{
    srand((int)time(0));
    int n, m, k=0;
    cout << "n="; cin >> n;
    cout << "m="; cin >> m;
    
        int **a = new int*[n];
      for (int i = 0; i < n; i++)
          a[i]=new int[m];          
    
    for (int i = 0; i < n; i++)
    {           
        for (int j = 0; j < m; j++)
        {
            a[i][j]=rand()%9 + 1;        
            cout << a[i][j] << " ";    
        }
        cout << "  sum even: " << SumEvenRow(a[i],m);        
        cout << "\n";
    }
    cout << "\n"; 
    
    for (int i=0; i<n-1; i++) 
        for (int j=i+1; j<n; j++)
        if (SumEvenRow(a[i],m)>SumEvenRow(a[j],m))
        {
            k=1;
            swap(a[i], a[j]);
        }
        
    if(k)
    {    
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < m; j++)        
                cout << a[i][j] << " ";       
            cout << "  sum even: " << SumEvenRow(a[i],m);
            cout << "\n";
        }
    }
    else cout << "Matrix is sorted\n";
    
    for (int i = 0; i < n; i++)
    delete[]a[i];
    delete[]a;    
system("pause");
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.01.2021, 13:32
Помогаю со студенческими работами здесь

Отсортировать строки массива в порядке возрастания суммы элементов строк
отсортировать строки массива в порядке возрастания суммы элементов строк Добавлено через 1 минуту отсортировать строки массива...

Переставить столбцы двумерного массива в порядке возрастания элементов последней строки.
Переставить столбцы двумерного массива a в порядке возрастания элементов последней строки. Использовать метод разделения.

Расположить строки двумерного массива в порядке возрастания сумм элементов в них
LAZARUS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Расположить строки двумерного массива в порядке возрастания сумм элементов в них.

1.Переставить столбцы двумерного массива a[n,n] в порядке возрастания элементов 2 строки. Использовать метод Ш
Ребят, помогите пожалуйста выполнить 2 практических задания!срочно надо,завтра сдавать отчет!Заранее огромное спасибо! 1) Двусвязный...

Сортировка массива по сумме цифр элементов массива в порядке возрастания(неубывания)
Мне нужно написать программу, которая будет сортировать заданный массив по сумме цифр его элементов в порядке неубывания(возрастания). Я то...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru