Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
yurets17
1 / 1 / 2
Регистрация: 07.10.2013
Сообщений: 170
1

Функция, сортирующая сначала нечетные числа в массиве по возрастанию, а потом четные по убыванию

12.11.2013, 16:22. Просмотров 1147. Ответов 3
Метки нет (Все метки)

Ребят, подскажите как написать функцию, которая будет сортировать сначала нечетные числа в массиве по возрастанию, а потом четные по убыванию?
есть такой пример, но работает почему-то неверно!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
bool goodDisposition(int x1, int x2){
    if (x1 % 2 != x2 % 2)
          return x1 % 2 < x2 % 2;
    else if( x1 % 2 == 0)
                 return x1>x2;
        else
               return x1 <  x2;
}
 
void sortChoise(double MyArray[], int size){
    for(int i=0; i<size-1;i++){
        for(int j = i + 1; j<size; j++) {
            if (!goodDisposition(MyArray[i] ,MyArray[j])){
                int x =  MyArray[i];
                MyArray[i] =  MyArray[j];
                MyArray[j] =  x;
            }
        }
    }
}
Добавлено через 1 час 2 минуты
Помогите, пожалуйста!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2013, 16:22
Ответы с готовыми решениями:

Cортировка в массиве: сначала все четные, а потом все нечетные числа
Пользователь вводит элементы массива. Переставить в первую половину элементы,...

Используя вспомогательный файл, переписать компоненты f так, чтобы в файле сначала шли нечетные, потом четные числа
Здравствуйте. Помогите реализовать алгоритм решения задачи. Дан файл f,...

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

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

Функция сортирующая первую половину массива по убыванию, а вторую - по возрастанию
Написать функцию, которая сортирует первую половину массива по убыванию, а...

3
Drusha
6 / 6 / 1
Регистрация: 16.07.2013
Сообщений: 74
12.11.2013, 17:16 2
Т.е. при исходнике 561892347 программа должна выводить что-то типа 135798642 или 183654729?
0
yurets17
1 / 1 / 2
Регистрация: 07.10.2013
Сообщений: 170
12.11.2013, 17:35  [ТС] 3
135798642
вот это правильно
0
Drusha
6 / 6 / 1
Регистрация: 16.07.2013
Сообщений: 74
12.11.2013, 18:26 4
Вот получилось, вроде работает

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
#include<iostream>
using namespace std;
int main()
{
    int mas[10],temp;
    int i,j=1;
    cout << "Enter arrays: " << endl;
    for(i = 0; i < 10; i++) 
    {
        cout<< j++ << " :";
        cin >> mas[i];
    }
    for(i = 0; i<10; i++)
    {   
        for(j = 9; j > i; j--)
        {
            if(mas[j-1]%2==0 && mas[j]%2)
            {
                temp=mas[j-1];
                mas[j-1]=mas[j];
                mas[j]=temp;
            }
            if(mas[j-1]<mas[j] && mas[j]%2==0 && mas[j-1]%2==0)
            {
                temp=mas[j-1];
                mas[j-1]=mas[j];
                mas[j]=temp;
            }
             if(mas[j-1]>mas[j] && mas[j]%2 && mas[j-1]%2)
            {
                temp=mas[j-1];
                mas[j-1]=mas[j];
                mas[j]=temp;
            }
        }
    }
    for(i = 0; i < 10; i++) cout << mas[i] << ' ';
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2013, 18:26

Как вывести массив из функции сначала четные потом нечетные
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; // вывод...

Преобразовать массив таким образом, чтобы сначала располагались четные, а потом нечетные элементы
Ребята , помогите : нужно составить алгоритм и программу преобразования массива...

Отсортировать четные элементы массива по возрастанию, а нечетные по убыванию
По четным по возрастанию по нечетным по убыванию. Пробую пузырьковую сортировку...


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

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

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