Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 14
1

Где тут ошибка? Программа сортировки массива по возрастанию

08.11.2013, 13:14. Показов 599. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
программа сортирует массив по возрастанию. кусок кода который выполняет сортировку взял с инета. но преп придрался к оформлению и после того как расставил все скобки пошел бесконечный цикл.
if и swap были в одной строке. что я переписал не так? помогите разобраться пожалуйста
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
#include <iostream>
#include <locale>
#include <algorithm>
 
using namespace std;
 
void Swap(int *Mas, int i)
{
int temp;
temp=Mas[i];
Mas[i]=Mas[i-1];
Mas[i-1]=temp;
}
void ShakerSort(int *Mas, int Start, int N)
{
    int Left, Right, i;
    Left=Start;
    Right=N-1;
    while (Left<=Right)
    {
        for (i=Right; i>=Left; i--)
        {
            if (Mas[i-1]>Mas[i]) 
            {
                Swap(Mas, i);
                Left++;
            }
        }
        for (i=Left; i<=Right; i++)
        {
            if (Mas[i-1]>Mas[i]) 
            {
                Swap(Mas, i);
                Right--;
            }
    }
    }
}
 
 
 
int main(int argc, char** argv) {
    int N;
    setlocale (LC_ALL, "rus");
    cout<<"Введите количество элементов массива ";
    cin>>N;
    int *a=new int [N];
    for (int i=0; i<N; i++)
    {
        cout<<i+1<<" ";
        cin>>a[i]; 
    }
    
  ShakerSort(a, 1, N);
  
    for (int i=0; i<N; i++)
    {   
        cout<<a[i]<<" ";//похоже что бесконечный цикл. 1 ядро-100%
    }
    return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.11.2013, 13:14
Ответы с готовыми решениями:

Обнулите все элементы массива между max и min. У меня есть код, но тут где то ошибка
День добрый. Помогите решить легкую задачу. Спасибо 2)Обнулите все элементы массива между max и...

Где тут ошибка?
Добрый день Подскажите где тут ошибка?? &lt;html&gt; &lt;body&gt; &lt;img...

где тут ошибка
не меняется ничего только ткст и музыкальный файл отображается. &lt;!DOCTYPE HTML PUBLIC...

Где тут ошибка?
Где ошибка? Исправьте пожалуйста Задача: открытый текст записывается в матрицу по определенному...

3
 Аватар для Greeezly
6 / 6 / 1
Регистрация: 31.08.2012
Сообщений: 230
08.11.2013, 13:27 2
ты индексы элементов что ли меняешь?
0
 Аватар для Nik-Hander
5 / 4 / 2
Регистрация: 16.08.2013
Сообщений: 41
08.11.2013, 14:01 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
46
#include <iostream>
#include <locale>
 
using namespace std;
 
void BubbleSort(int* sort_el, int length)   // сортировка пузырьком
{
    int time = 0;   // временная переменная, хранящая элемент массива
    bool exit = false;   // болевая переменная для выхода из цикла, если массив отсортирован
    while(!exit)
    {
        exit = true;
        for (int k = 0; k < (length - 1); k++)
        {
            if (sort_el[k] > sort_el[k + 1])
            {
                time = sort_el[k];
                sort_el[k] = sort_el[k + 1];
                sort_el[k + 1] = time;
                exit = false;
            }
        }
    }
}
 
int main()
{
    int N;
    setlocale (LC_ALL, "rus");
    cout << "Введите количество элементов массива ";
    cin >> N;
    int *a = new int[N];
    for (int i = 0;i < N;i++)
    {
        cout << i + 1 << " ";
        cin >> a[i];
    }
 
    BubbleSort(a, N);
 
    for (int i = 0;i < N;i++)
    {
        cout << a[i] << " ";
    }
    return 0;
}
0
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 14
08.11.2013, 19:24  [ТС] 4
не дано... именно перемешиванием нужно
0
08.11.2013, 19:24
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.11.2013, 19:24
Помогаю со студенческими работами здесь

Где тут ошибка?
sPath = &quot;C:\\Users\\ZALMAN\\Desktop\\1.txt&quot;; SH = WScript.CreateObject(&quot;WScript.Shell&quot;); FSO =...

Где тут ошибка?
Отбой. Разобрался. Добавлено через 13 часов 29 минут Вот, тут в 4 строке сообщают об ошибке....

Где то тут ошибка)
В этом коде есть ошибка, помогите её исправить. #include &lt;stdlib.h&gt; #define N 10 struct...

Где тут ошибка?
Ну гдеее?


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Обработка графической информации
hw_wired 28.01.2025
Введение в компьютерную графику Компьютерная графика стала неотъемлемой частью современного цифрового мира, пройдя впечатляющий путь развития от простейших черно-белых изображений до сложных. . .
Python в Алгоритмике: Решение задач
hw_wired 28.01.2025
Введение в Python и Алгоритмику В современном мире программирование стало неотъемлемой частью образования и профессионального развития. Python зарекомендовал себя как один из самых популярных и. . .
Компьютер как универсальное устройство для работы с информацией
hw_wired 28.01.2025
Введение в устройство компьютера Компьютер представляет собой универсальное электронное устройство, предназначенное для автоматической обработки информации. В современном мире компьютер стал. . .
Информация и информационные процессы
hw_wired 28.01.2025
Понятие информации и ее виды В современном мире информация является одним из фундаментальных понятий, пронизывающих все сферы человеческой деятельности. Под информацией понимают любые сведения об. . .
Алгоритмика
hw_wired 28.01.2025
Введение: Основы алгоритмики и её роль в информатике В современном мире программирование и алгоритмическое мышление стали неотъемлемой частью образования и профессиональной деятельности. . . .
Информационное моделирование
hw_wired 28.01.2025
Введение в информационное моделирование В современном мире информационное моделирование стало неотъемлемой частью научной, образовательной и профессиональной деятельности. Это мощный инструмент. . .
Объекты и их имена
hw_wired 28.01.2025
Введение: Основы объектного подхода и их роль в информатике В современном мире информационных технологий объектный подход стал фундаментальным принципом организации и обработки информации. Этот. . .
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru