0 / 0 / 0
Регистрация: 07.12.2014
Сообщений: 13

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

07.12.2014, 16:02. Показов 2294. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В матрице размером N на M упорядочить строки по возрастанию их первых элементов. Помогите пожалуйста сделать
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.12.2014, 16:02
Ответы с готовыми решениями:

Как в двухмерном динамическом массиве записать сумму элементов указанной строки
Вот код, который получился у меня, но он выводит неверное значение: #include<stdio.h> #include<stdlib.h> int main()...

В двухмерном массиве элементы каждой строки упорядочить по уменьшению значений элементов
вывести начальный массив, потом вывести преобразованый массив

Упорядочить строки матрицы по возрастанию их первых элементов
В работе память для массива должна выделяться динамически. На экран выводить исходные данные и результат. Дана матрица размером...

3
 Аватар для D_in_practice
343 / 343 / 331
Регистрация: 02.10.2014
Сообщений: 666
07.12.2014, 16:39
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
int main(){
    
    srand(time(0));
    int n, m;
    do{
        cout << "n: m: ";
        cin >> n >> m;
    }while (n < 1 || m < 1);
        
    int **matrix = new int *[n];
    for (int i = 0; i < n; ++i)
        matrix[i] = new int [m];
    
    for (int i = 0; i < n; ++i){
        for (int j = 0; j < m; ++j){
            matrix[i][j] = rand()%10;
            cout << matrix[i][j] << ' ';
        }
        cout << endl;   
    }
        
    for (int k = 0; k < n; ++k)
        for (int i = 0; i < n - 1 - k; ++i)
            if (matrix[i][0] > matrix[i + 1][0])
                for (int j = 0; j < m; ++j){
                    int buf = matrix[i][j];
                    matrix[i][j] = matrix[i + 1][j];
                    matrix[i + 1][j] = buf;
                }
    
    cout << endl;
    for (int i = 0; i < n; ++i){
        for (int j = 0; j < m; ++j)
            cout << matrix[i][j] << ' ';
        cout << endl;   
    }       
    
    for (int i = 0; i < n; ++i)
       delete [] matrix[i];
    delete [] matrix;
}
1
0 / 0 / 0
Регистрация: 07.12.2014
Сообщений: 13
07.12.2014, 21:56  [ТС]
можешь пожалуйста объяснить 14 28 29 30 32 34 строчки, и я еще не понял что за переменные j и k, и i(хотя i и j догадываюсь)
0
 Аватар для D_in_practice
343 / 343 / 331
Регистрация: 02.10.2014
Сообщений: 666
07.12.2014, 23:13
Лучший ответ Сообщение было отмечено Shustrila как решение

Решение

C++
1
2
3
4
do{
   cout << "n: m: ";
   cin >> n >> m;
}while (n < 1 || m < 1);//ввод n, m, пока хотя бы одно из них меньше 1
Общая идея сортировки пузырьком:
4 3 2 1 | сравним 4 > 3 значит меняем местами
3 4 2 1
3 2 4 1
3 2 1 4 | максимальный элемент в конце
----------------------------
второй проход последний элемент уже не смотрим
3 2 1 4
2 3 1 4
2 1 3 4| второй элемент в конце
----------------------------
третий проход
2 1 3 4
1 2 3 4

C++
1
2
3
4
5
6
7
8
9
10
for (int k = 0; k < n; ++k)//пройдемся по массиву n  раз, k - это номер прохода
//при каждом проходе самый большой элемент будет переставлен в самый конец:
   for (int i = 0; i < n - 1 - k; ++i)//просмотрим все строки
       if (matrix[i][0] > matrix[i + 1][0])//если первый элемент i - й строки,  больше элемента след. строки
                                           //тогда поменяем строки местами:
           for (int j = 0; j < m; ++j){//параметр j-номер столбца. действия ниже делаем для каждого столбца
               int buf = matrix[i][j];/////////эти три строки меняют местами matrix[i][j] и matrix[i + 1][j]
               matrix[i][j] = matrix[i + 1][j];/////////////////////////////////////////////////////////////
               matrix[i + 1][j] = buf;//////////////////////////////////////////////////////////////////////
           }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.12.2014, 23:13
Помогаю со студенческими работами здесь

Упорядочить строки матрицы по возрастанию их первых элементов
Задана матрица целых чисел. Упорядочить ее строки по возрастанию их первых элементов. Использовать функции.

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

Упорядочить строки матрицы по возрастанию первых элементов
Данная матрица размера М × N. Упорядочить ее строки так, чтобы их первые элементы образовывали возрастающую последовательность.

Упорядочить строки матрицы по возрастанию их первых элементов
Нарисуйте схему алгоритма. Во всех заданиях переменные вводить и выводить с помощью компонента TEdit, массивы – c помощью компонента...

Упорядочить строки матрицы по возрастанию их первых элементов
Cделал наподобие как на форуме что-то не получается.(запутался что-то):- ...


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

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

Новые блоги и статьи
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений Всем привет. А вот мой компьютер, переделанный из ноутбука. Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца: Хочу еще Симбу взять, очень нравится. . .
Инференс ML моделей в Java: TensorFlow, DL4J и DJL
Javaican 05.11.2025
Python захватил мир машинного обучения - это факт. Но когда дело доходит до продакшена, ситуация не так однозначна. Помню проект в крупном банке три года назад: команда data science натренировала. . .
Mapped types (отображённые типы) в TypeScript
Reangularity 03.11.2025
Mapped types работают как конвейер - берут существующую структуру и производят новую по заданным правилам. Меняют модификаторы свойств, трансформируют значения, фильтруют ключи. Один раз описал. . .
Адаптивная случайность в Unity: динамические вероятности для улучшения игрового дизайна
GameUnited 02.11.2025
Мой знакомый геймдизайнер потерял двадцать процентов активной аудитории за неделю. А виновником оказался обычный генератор псевдослучайных чисел. Казалось бы - добавил в карточную игру случайное. . .
Протоколы в Python
py-thonny 31.10.2025
Традиционная утиная типизация работает просто: попробовал вызвать метод, получилось - отлично, не получилось - упал с ошибкой в рантайме. Протоколы добавляют сюда проверку на этапе статического. . .
C++26: Read-copy-update (RCU)
bytestream 30.10.2025
Прошло почти двадцать лет с тех пор, как производители процессоров отказались от гонки мегагерц и перешли на многоядерность. И знаете что? Мы до сих пор спотыкаемся о те же грабли. Каждый раз, когда. . .
Изображения webp на старых x32 ОС Windows XP и Windows 7
Argus19 30.10.2025
Изображения webp на старых x32 ОС Windows XP и Windows 7 Чтобы решить задачу, использовал интернет: поисковики Google и Yandex, а также подсказки Deep Seek. Как оказалось, чтобы создать. . .
Passkey в ASP.NET Core identity
stackOverflow 29.10.2025
Пароли мертвы. Нет, серьезно - я повторяю это уже лет пять, но теперь впервые за это время чувствую, что это не просто красивые слова. В . NET 10 команда Microsoft внедрила поддержку Passkey прямо в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru