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

Блинная сортировка массива, не сортируется последний элемент - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка: нарушение прав доступа при чтении по адресу http://www.cyberforum.ru/cpp-beginners/thread1499096.html
Код: #include <SFML/Graphics.hpp> int M = 3; int N = 3; int Scale = 100; int w = Scale*M; int h = Scale*N;
C++ Указатель в списке ссылается на себя, а не на следующий элемент Уважаемые, форумчане! Помогите разобраться в вопросе. Я хочу реализовать стек(добавление элемента) на основе односвязного списка. Предварительно почитав как это делается, я решил а почему бы не... http://www.cyberforum.ru/cpp-beginners/thread1499047.html
C++ Определить событие появления сообщения в программе
Здравствуйте, необходимо написать программу, которая определяет момент появление ошибки в другом приложении (появляется окно с сообщением, по всей видимости WinAPI). Подскажите, в каком направлении...
C++ Push_back вектора по указателю - возможно ли
Я хочу объявить вектор в одной функции и работать с ним методами в другой. Самый простой путь - объявить вектор глобально, что мне не очень нравится. Второй путь - передать в функцию копию...
C++ Не видно определений функций при раздельной компиляции http://www.cyberforum.ru/cpp-beginners/thread1498999.html
Описал класс и его наследника в заголовочном файле; самые громоздкие определения функций вынес в отдельные файлы, однако при компиляции/сборке эти определения не видно из файла с "main". Здесь...
C++ Const-параметры в аргументах функции void setAmount(const int _amoutn) А тут уже const излишен, перебор. Добавлено через 3 минуты void setDescription(const std::string& _description) { m_description = _description; } //...... подробнее

Показать сообщение отдельно
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
15.07.2015, 11:56
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
#include <iostream>
#include <windows.h>
#include <conio.h>
#include <ctime>
using namespace std;
int main() { //pancakes
//srand(time(0));
    const int n = 25; // заряжает массив рандомными элементами.
    int arr[n], ind_max = 0;
    for (int i = 0; i < n; i++) {
        arr[i] = 5 + rand() % 40;
        cout << " " << arr[i] << "--";
    }
    cout << endl;
    for (int cur_size = n; cur_size > 1; cur_size--) { //именно здесь возникает проблемма, остальные элементы чикают как часики ))
        ind_max = 0; //
        for (int ind = 0; ind < cur_size; ind++) { //поиск максимального элемента массива.
            if (arr[ind] > arr[ind_max])
                ind_max = ind;
        }
        if (ind_max == cur_size - 1)
            continue;
        for (int j = 0, i = ind_max; j < i; i--, j++) { //Переворачивает часть массива во главе с макс элементом, макс
            swap(arr[j], arr[i]); //выходит на вершок блинной стопки.
 
        }
        for (int i = 0, j = cur_size - 1; i < j; i++, j--) { //Переворачивает весь массив так чтобы макс оказался
            swap(arr[i], arr[j]);
 
        }
    }
    for (int i = 0; i < n; i++) //выводит отсортированный массив.
        cout << arr[i] << " ";
 
    //getch();
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru