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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
JIioneJI
1 / 1 / 0
Регистрация: 04.01.2013
Сообщений: 121
#1

Сортировка массива по возрастанию или по убыванию, в зависимости от параметра - C++

06.03.2013, 00:05. Просмотров 390. Ответов 2
Метки нет (Все метки)

Дан массив чисел размерностью 10 элементов. Написать программу, которая сортирует
массив по возрастанию или по убыванию, в зависимости от параметра. Если он равен 1, сортировка
идет по убыванию, если 0, то по возрастанию

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
#include<algorithm>
 
void sort(int mas[], int size, bool descend=true){
    if(descend) std::sort(mas, mas+size, std::greater<int>());
    else std::sort(mas, mas+size);
    std::for_each(mas, mas+size, [](int x){std::cout<<x<<"  ";});
    std::cout<<"\n";
}
 
int main(){
    const int size=10;
    int mas[size]{6, -4, 0, 0, -4, -4, -9, 16, 66, 3};
    sort(mas, size);
    sort(mas, size, false);
}
как сделать что б без библиотеки алгоритм было?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2013, 00:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка массива по возрастанию или по убыванию, в зависимости от параметра (C++):

Написать функцию, которая сортирует массив по возрастанию или по убыванию, в зависимости от третьего параметра функции. - C++
Доброго времени суток! У меня возникла некоторая проблема в написании кода для задания: Дан массив чисел размерностью 10 элементов....

Сортировка первой половины массива по возрастанию, а второй по убыванию - C++
Здравствуйте, помогите пожалуйста. Дан массив А, состоящий из 20 целых чисел. Отсортируйте первую половину массива по возрастанию, а...

Сортировка элементов первой половины одномерного массива по убыванию, а второй – по возрастанию - C++
Добрый Вечер!!!Пожалуйста помогите решить задачу на Шаблоны Функций: Разработайте программу, в которой реализована сортировка элементов...

Сортировка массива вставкой, чтобы четные числа шли по возрастанию, а нечетные по убыванию - C++
Всем привет! Есть задача отсортировать массив таким образом, чтобы четные числа шли в нем по возрастанию, а нечетные по убыванию. Числа...

Вывести элементы массива, которые стоят на нечетных номерах по убыванию или возрастанию - C++
В общем дан одномерный массив из 23 элементов. Нужно вывести элементы массива, которые стоят на нечетных номерах по убыванию или...

Написать функцию проверяющую по возрастанию или убыванию упорядочена указанная строка двумерного массива - C++
Написать функцию проверяющую по возрастанию или убыванию упорядочена указанная строка двумерного массива. Упорядочить по возрастаниювсе...

2
Vourhey
Почетный модератор
6482 / 2256 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
06.03.2013, 00:10 #2
Цитата Сообщение от JIioneJI Посмотреть сообщение
как сделать что б без библиотеки алгоритм было?
Хахах, использовать другую библиотеку, либо сортировку написать самому ручками.
0
olya7
477 / 294 / 91
Регистрация: 18.02.2013
Сообщений: 684
06.03.2013, 00:20 #3
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
#include<iostream.h>
 
 
void sort(int *mas, int size, bool descend=true)
{
    if(descend) 
    {
        for (int i=0;i<size;i++)
        {   for(int j=0;j<size-1;j++)
                if(mas[j]>mas[j+1])
                {
                    int temp=mas[j];
                    mas[j]=mas[j+1];
                    mas[j+1]=temp;
                }
        }
    }
 
                else 
                {
                    for (int i=0;i<size;i++)
                    {   for(int j=0;j<size-1;j++)
                            if(mas[j]<mas[j+1])
                                {
                                int temp=mas[j];
                                mas[j]=mas[j+1];
                                mas[j+1]=temp;
                                }
                    }
                }
    
                        
    for (int i=0;i<size;i++)
                    cout<<mas[i]<<" ";
                cout<<endl;
    
}
 
void main()
{
    const int size=10;
    int mas[10]={6, -4, 0, 0, -4, -4, -9, 16, 66, 3};
    sort(mas, 10);
    sort(mas, 10, false);
}
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2013, 00:20
Привет! Вот еще темы с ответами:

Написать функцию, которая в зависимости от значения первого параметра возвращает количество отрицательных или положительных чисел призвольного массива - C++
Написать функцию, которая в зависимости от значения первого параметра (символ + или – ) возвращает количество отрицательных или...

В зависимости от четности/нечетности отсортировать элементы матрицы по убыванию/возрастанию - C++
Здравствуйте! Помогите пож-та написать код: Если столбец матрицы четный - отсортировать элементы по возрастанию, нечетный - по...

Целочисленный одномерный массив, сортировка по убыванию и возрастанию - C++
Написать программу, позволяющую сортировать введенный пользовате-лем целочисленный одномерный массив по убыванию или по возраста-нию (в...

Быстрая сортировка. Сложности с сортировкой по возрастанию и убыванию - C++
Сложность в то, что не корректно работает быстрая сортировка по возрастанию и убыванию. В консоли приходится несколько раз выбирать способ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru