Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
 Аватар для Ntsket
2 / 2 / 0
Регистрация: 20.11.2010
Сообщений: 19

Сортировка массива [C++]

20.11.2010, 01:02. Показов 1548. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, уважаемые. Не получается сделать сортировку массива, а именно: необходимо сделать сортировку каждого из 3х столбцов в порядке убывания элементов. Метод сортировки неважен. Заранее благодарю.
ps. если не сложно, не отказался бы от комментариев в коде, чтобы понять что происходит.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h"
#include "math.h"
#include <iostream>
 
int main(void)
{
    int t, i, num[20] [3];
 
    for(t=0; t<20; ++t)
        for(i=0; i<3; ++i)
            num[t] [i] = rand()%10000 - 5000;
 
    for(t=0; t<20; ++t)
    {
        for(i=0; i<3; ++i)
            printf("%3d ", num[t] [i]);
        printf("\n");
        }
    return 0;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.11.2010, 01:02
Ответы с готовыми решениями:

Быстрая сортировка(сортировка Хоара). Отсортировать фрагмент массива
Мне нужно отсортировать фрагмент массива, расположенный между первым и последним отрицательным элементом. Немогу понять как устоновить...

Сортировка массива: перенести положительные числа в начало, а отрицательные - в конец массива
Дан вещественный массив A(N). Отсортировать его таким образом, чтобы все положительные числа находились в начале, а отрицательные - в конце...

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

4
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
20.11.2010, 01:15
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
#include "stdafx.h"
#include "math.h"
#include <iostream>
 
int main(void)
{
        int t, i, num[20] [3];
 
        for(t=0; t<20; ++t)
                for(i=0; i<3; ++i)
                        num[t][i] = rand()%10000 - 5000;
 
        for(t=0; t<20; ++t)
        {
                for(i=0; i<3; ++i)
                        printf("%3d ", num[t][i]);
                printf("\n");
                }
        int j, temp_i, temp;
for(j=0; j<3; j++)
{
    for(i=0; i<20; i++)
    {
        temp_i=i;
        for(t=i+1; t<20; t++)
            if(num[t][j]>num[temp_i][j])
                temp_i=t;
        temp=num[i][j]; num[i][j]=num[temp_i][j]; num[temp_i][j]=temp;
    }
}
printf("\n\n");
 
        for(t=0; t<20; ++t)
        {
                for(i=0; i<3; ++i)
                        printf("%3d ", num[t] [i]);
                printf("\n");
                }    
 
        return 0;
}
1
 Аватар для Ntsket
2 / 2 / 0
Регистрация: 20.11.2010
Сообщений: 19
20.11.2010, 01:29  [ТС]
valeriikozlov,
Огромное спасибо, вот только небольшой вопросик: правильно ли, что в результате выводится не только отсортированный массив, но и не отсортированный и можно ли этого как нибудь избежать?
Миниатюры
Сортировка массива [C++]  
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
20.11.2010, 01: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
#include "stdafx.h"
#include "math.h"
#include <iostream>
 
int main(void)
{
        int t, i, num[20] [3];
 
        for(t=0; t<20; ++t)
                for(i=0; i<3; ++i)
                        num[t][i] = rand()%10000 - 5000;
 
        for(t=0; t<20; ++t)// начиная с этой строки
        {
                for(i=0; i<3; ++i)
                        printf("%3d ", num[t][i]);
                printf("\n");
                }// и кончая этой строкой выводится на экран неотсортированный (первоначальный массив)
                int j, temp_i, temp;
for(j=0; j<3; j++)
{
        for(i=0; i<20; i++)
        {
                temp_i=i;
                for(t=i+1; t<20; t++)
                        if(num[t][j]>num[temp_i][j])
                                temp_i=t;
                temp=num[i][j]; num[i][j]=num[temp_i][j]; num[temp_i][j]=temp;
        }
}
printf("\n\n");
 
        for(t=0; t<20; ++t)// начиная этой строкой
        {
                for(i=0; i<3; ++i)
                        printf("%3d ", num[t] [i]);
                printf("\n");
                }    // и кончая этой строкой массив выводится уже отсортированный 
 
        return 0;
}
Если Вы хотите убрать вывод неотсортированного массива, то можете просто удалить или закоментировать часть кода которая выводит неотсортированный массив.
1
 Аватар для Ntsket
2 / 2 / 0
Регистрация: 20.11.2010
Сообщений: 19
20.11.2010, 01:44  [ТС]
Спасибо, прошу прощения, не подумал, теперь все понятно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.11.2010, 01:44
Помогаю со студенческими работами здесь

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

Сортировка массива структур через сортировку массива указателей
Ошибка возникает в функции void sort(student **ppStud, int k, char ch). Кто видит ошибку - помогите, пожалуйста. Код программы: ...

Сортировка массива. Ошибка после ввода размерности массива
подскажите почему после ввода размерности массива выдает ошибку #include&lt;iostream&gt; #include&lt;cstdlib&gt; #include&lt;conio&gt; ...

Сортировка массива, вместо массива выводит мусор
Здравствуйте Уважаемые жители форума! Есть рабочий код сортируем массив выбором поиск наименьшего значения, но почему выводит какой то...

Указатели массива и сортировка массива
Доброго времени суток, вот бьюсь над проблемой, нужна программа которая б сортировку динамического массива (ввод с клавиатуры) из 10...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru