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

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

Войти
Регистрация
Восстановить пароль
 
Saddiel
7 / 7 / 0
Регистрация: 02.11.2012
Сообщений: 152
#1

Переделать программу, чтобы пузырьковая сортировка начиналась с первого элемента - C++

25.03.2014, 05:54. Просмотров 195. Ответов 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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
void sort_bubble(int* a, int n){
    int s = 0;
    for (int i = 0; i < n; i++){
        for (int j = n - 1; j > i; j--){
            if(a[j] < a[j -1]){
                s = a[j];
                a[j] = a[j -1];
                a[j - 1] = s;
            }
        }
    }
}
void sort_vibor(int* arr, int size){
    int tmp, i, j, pos;
    for(i = 0; i < size; ++i){ 
        pos = i; 
        tmp = arr[i];
        for(j = i + 1; j < size; ++j){
            if (arr[j] > tmp){
               pos = j; 
               tmp = arr[j]; 
            }
        }
        arr[pos] = arr[i]; 
        arr[i] = tmp;
    }
}
 
 
int main(){
    setlocale(LC_ALL, "Russian");
    srand(time(0));
    int B[26];
    cout << "Исходный массив B: " << endl;
    for (int i = 0; i < 26; i++){
        B[i] = rand() % 100;
        cout << B[i] << " ";
    }
    cout << endl;
    cout << "Отсортированный массив " << endl;
    sort_vibor(B, 13);
    sort_bubble(B + 13, 13);
    for (int i = 0; i < 26; i++){
        cout << B[i] << " ";
    }
    cout << endl;
    system("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2014, 05:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переделать программу, чтобы пузырьковая сортировка начиналась с первого элемента (C++):

Пузырьковая сортировка от первого шага к последнему - C++
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; void sort_bubble(int* a, int n){ int s = 0; ...

Сортировка по убыванию элементов массива, расположенных до первого отрицательного элемента - C++
Отсортировать в порядке убывания элементы массива Е(46), расположенные до первого отрицательного его элемента.

Найти номер первого максимального элемента среди отрицательных элементов, расположенных до первого элемента, большего заданного числа Т - C++
Написать собственную функцию для работы с одномерным динамическим массивом, заданным указателем. Алгоритмы решения всех подзадач, включая...

Найти номер первого максимального элемента среди отрицательных элементов, расположенных до первого элемента, большего Т. - C++
Задан целочисленный одномерный массив a из n элементов. Найти номер первого максимального элемента среди отрицательных элементов,...

Переделать программу, чтобы вывод осуществлялся в текстовый файл - C++
Здравствуйте. Помогите, пожалуйста, переделать программу, чтобы ввод и вывод данных осуществлялся в текстовые файлы (input, output). Вот...

Пузырьковая сортировка - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { const int n = 5; int a; ifstream...

2
Genome
9 / 9 / 1
Регистрация: 22.03.2013
Сообщений: 219
25.03.2014, 08:20 #2
А разве она начинается не с первого элемента ?
0
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
25.03.2014, 08:46 #3
C 13 начиналась
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
void sort_bubble(int* a, int n){
    int s = 0;
    for (int i = 0; i < n; i++){
        for (int j = n - 1; j > i; j--){
            if(a[j] < a[j -1]){
                s = a[j];
                a[j] = a[j -1];
                a[j - 1] = s;
            }
        }
    }
}
void sort_vibor(int* arr, int size){
    int tmp, i, j, pos;
    for(i = 0; i < size; ++i){ 
        pos = i; 
        tmp = arr[i];
        for(j = i + 1; j < size; ++j){
            if (arr[j] > tmp){
               pos = j; 
               tmp = arr[j]; 
            }
        }
        arr[pos] = arr[i]; 
        arr[i] = tmp;
    }
}
 
 
int main(){
    setlocale(LC_ALL, "Russian");
    srand(time(0));
    int B[26];
    cout << "Исходный массив B: " << endl;
    for (int i = 0; i < 26; i++){
        B[i] = rand() % 100;
        cout << B[i] << " ";
    }
    cout << endl;
    cout << "Отсортированный массив " << endl;
    sort_vibor(B, 13);
    sort_bubble(B, 26);
    for (int i = 0; i < 26; i++){
        cout << B[i] << " ";
    }
    cout << endl;
    system("pause");
}
Добавлено через 5 минут
Можно и так:
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
void sort_bubble(int* a, int n){
    int s = 0;
    for (int i = 0; i < n; i++){
        for (int j = n - 1; j > i; j--){
            if(a[j] < a[j -1]){
                s = a[j];
                a[j] = a[j -1];
                a[j - 1] = s;
            }
        }
    }
}
void sort_vibor(int* arr, int size){
    int tmp, i, j, pos;
    for(i = 0; i < size; ++i){ 
        pos = i; 
        tmp = arr[i];
        for(j = i + 1; j < size; ++j){
            if (arr[j] > tmp){
               pos = j; 
               tmp = arr[j]; 
            }
        }
        arr[pos] = arr[i]; 
        arr[i] = tmp;
    }
}
 
 
int main(){
    setlocale(LC_ALL, "Russian");
    srand(time(0));
    int B[26];
    cout << "Source mas B: " << endl;
    for (int i = 0; i < 26; i++){
        B[i] = rand() % 100;
        cout << B[i] << " ";
    }
    cout << endl;
    cout << "\nSort mas: " << endl;
    sort_vibor(B, 26);
    std::cout << "Selection sort:\n";
    for (int i = 0; i < 26; i++){
        cout << B[i] << " ";
    }
    std::cout << std::endl;
    std::cout << "\nBubble sort:\n";
    sort_bubble(B, 26);
    for (int i = 0; i < 26; i++){
        cout << B[i] << " ";
    }
    cout << endl;
    system("pause");
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2014, 08:46
Привет! Вот еще темы с ответами:

Пузырьковая сортировка - C++
Здравствуйте! Необходимо осуществить пузырьковую сортировку в столбцах двумерного массива. Но только сортировка должна быть среди...

Пузырьковая сортировка - C++
Помогите плз. Работаю в Visual Studio 2010. Написал алгоритм пузырьковой сортировки, но когда запускаю вместо одной из цифр выводится самое...

Пузырьковая сортировка - C++
Здравствуйте. Есть код, который сортирует методом пузырька по строчкам, что мне поменять, чтобы была сортировка по столбцам начиная с...

Сортировка пузырьковая - C++
Привет всем!помогите отсортировать задачку. #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { const...


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

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

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