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

Отсортировать массив по убыванию или по возрастанию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти сумму и максимальный элемент в массиве http://www.cyberforum.ru/cpp-beginners/thread1155422.html
Найти сумму и максимальный элемент у тех элементов массива, которые являются простыми числами.
C++ Классы для хранения массива из 10 окружностей Добрый день!!! кто может напишите пожалуйста программу. Тут нужно создать основную программу и библиотеку к ней. Классы для хранения массива из 10 окружностей. Написать метод, выбирающий пары... http://www.cyberforum.ru/cpp-beginners/thread1155419.html
C++ Описать структуру "Записная книга"
Описать структуру с именем NOTE, содержащую следующие поля: фамилия, имя; номер телефона; дата рождения (массив из трех чисел). Написать программу, выполняющую следующие действия: 1) ввод с...
C++ Квадрат выходит за границы окна
Как сделать, чтобы графический элемент программы (квадрат) не заходил за границы программы? Он изначально в центре. Я его перемещаю клавишами со стрелками в разные стороны. Нужно, чтобы он не...
C++ Присвоение слова букве a='CyberForum'; http://www.cyberforum.ru/cpp-beginners/thread1155400.html
Добрый день форумчане. Прошу помочь с проблемой. Хочу присвоить значение слова букве. Например a='cyberforum'; Как это реализовать. Прошу помочь. Спасибо.
C++ Удаление одной записи из БД без перезаписи всего файла Здравствуйте :) Наверное, по моему вопросу много информации в интернете, но я не знаю, как сформулировать его поисковику. Я собираюсь хранить в бинарном файле небольшую БД. Допустим, имена друзей... подробнее

Показать сообщение отдельно
Smallvi
5 / 5 / 6
Регистрация: 08.04.2014
Сообщений: 37
23.04.2014, 19:01
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
#include <stdio.h>
 
#define SIZE 5 // размер массива(n)
 
// Сортировка по возрасанию
void insertSortASC(int* a, int size) 
{
    int i, j, tmp;
    for (i = 1; i < size; ++i) // цикл проходов, i - номер прохода
    {
        tmp = a[i]; 
        for (j = i - 1; j >= 0 && a[j] > tmp; --j) // поиск места элемента в готовой последовательности 
            a[j + 1] = a[j];    // сдвигаем элемент направо, пока не дошли
        a[j + 1] = tmp; // место найдено, вставить элемент    
    }
}
 
// Сортировка по убыванию
void insertSortDESC(int* a, int size) 
{
    int i, j, tmp;
    for (i = 1; i < size; ++i) // цикл проходов, i - номер прохода
    {
        tmp = a[i]; 
        for (j = i - 1; j >= 0 && a[j] < tmp; --j) // поиск места элемента в готовой последовательности 
            a[j + 1] = a[j];    // сдвигаем элемент направо, пока не дошли
        a[j + 1] = tmp; // место найдено, вставить элемент    
    }
}
 
int main() {
    int a[SIZE] = {1, 5, 6, 2, 0}; // массив, который нужно отсортировать
    int i = 0; // просто счетчик
 
    insertSortDESC(a, SIZE); // по убыванию
    // insertSortASC(a, SIZE); - по возрастанию
    
    // выводим, чтобы проверить результат
    for(i = 0; i < 5; i++) {
        printf("%d ", a[i]);
    }
 
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru