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

Отсортировать по возрастанию элементы массива, с четными номерами методом выбора - C++

Восстановить пароль Регистрация
 
Семенова Ольга
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 28
08.03.2014, 11:58     Отсортировать по возрастанию элементы массива, с четными номерами методом выбора #1
Дан целочисленный массив с элементами от -20 до 20. Отсортировать по возрастанию элементы массива, с четными номерами методом выбора.
Помогите с условием для сортировки по возрастанию. Программа в целом есть.
( Turbo C++)

Программа:
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
48
49
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void sort (int k[], int);
void main()
{
int i, j, k, n, x[20], b[20];
clrscr();
cout<<"\ Vvedite n= ";
cin>>n;
randomize();
for(i=0; i<n; i++)
x[i]=random(40)-20;
cout<<"Isxodny massiv \n";
for(i=0; i<n; i++)
cout<<x[i]<< " ";
cout<<endl;
k=-1;
for(i=0; i<n; i++)
{
k++; b[k]=x[i];
};
cout<< "Massiv iz elementov c chetnymi nomerami \n";
for(i=1; i<k; i+=2)
cout<<b[i]<< " ";
cout<<endl;
cout<< "Poile sortirovki ";
cout<<endl;
sort(b,k);
getch();
}
void sort (int k[], int n)
{
int i, j,im,a;
for(i=0; i<=n-1; i+=2)
{
im=i;
for(j=i+1; j<=n; j+=2)
{
if(k[i]>k[im])
im=a;
}
for(i=1; i<=n; i+=2)
{
gotoxy(2+i*5,9);
cout<<(" %d ", k[i]);
}
}
}
Какое условие нужно поставить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2014, 11:58     Отсортировать по возрастанию элементы массива, с четными номерами методом выбора
Посмотрите здесь:

1 Отсортировать по возрастанию (методом выбора). 2 добавление, удаление, редактирование элемента списка (на С без плюсов). C++
Отсортировать по убыванию элементы массива с нечетными номерами методом обмена в прогрмамме С++ C++
Отсортировать по возрастанию массив 10 целых чисел методом выбора C++
Отсортировать по убыванию элементы массива с нечетными номерами методом выбора C++
C++ Отсортировать по возрастанию отрицательные элементы массива методом выбора
Отсортировать элементы массива по возрастанию методом обмена C++
C++ Отсортировать по возрастанию методом простого выбора
Отсортировать по возрастанию массив 10 целых чисел методом выбора C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
08.03.2014, 12:27     Отсортировать по возрастанию элементы массива, с четными номерами методом выбора #2
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <windows.h>
using namespace std;
 
void sort (int k[], int);
 
 
int main() {
    int i, j, k, n, x[20], b[20];
    system("cls");
    cout<<"\nVvedite n= ";
    cin>>n;
    srand(time(NULL));
    for(i=0; i<n; i++)
        x[i]= rand() % 10 + 1;
    cout<<"Isxodny massiv \n";
    for(i=0; i<n; i++)
    cout<<x[i]<< " ";
    cout<<endl;
    k=-1;
    for(i=0; i<n; i++) {
        k++; b[k]=x[i];
    };
    cout<< "Massiv iz elementov c chetnymi nomerami \n";
    for(i=1; i <= k; i+=2)
        cout<<b[i]<< " ";
    cout<<endl;
    cout<< "Posle sortirovki ";
    cout<< endl;
    sort(b,k);
    
    cin.get();
    cin.get();
 
    return 0;
}
 
void sort (int k[], int n) {
    int im, a;
    int exe;
    int t;
    for(int i=1; i <= n; i+=2) {
        exe = 0;
        im = i;
        t = k[i];
        for(int j = i; j <= n; j += 2) {
            if(k[j] < t) {
                im = j;
                t = k[j];
                exe = 1;
            }
        }
        if (exe) {
            k[im] = k[i];
            k[i] = t;
        }
    }
 
    for (int i = 0; i <= n; i++)
        cout << k[i] << " ";
}
Алмаз Валитов
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 18
20.04.2016, 16:42     Отсортировать по возрастанию элементы массива, с четными номерами методом выбора #3
У вас же массив не сортируется с четными номерами?
Yandex
Объявления
20.04.2016, 16:42     Отсортировать по возрастанию элементы массива, с четными номерами методом выбора
Ответ Создать тему
Опции темы

Текущее время: 18:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru