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

сортировка массива выбором - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Неразрешенная лексема http://www.cyberforum.ru/cpp-beginners/thread905887.html
//--------------------------------------------------------------------------- #include <dshow.h> //--------------------------------------------------------------------------- char * pcFileName = "test.avi"; //--------------------------------------------------------------------------- int main(int argc, char* argv) { long eventCode; IGraphBuilder * pGraphBuilder;...
C++ В чем ошибка? программа с использованием контейнера list /*Написать программу,моделирующую управление каталогом в файловой сис* теме. Для каждого файла в каталоге содержатся следующие сведения: имяфайла,дата создания, количество обращений к файлу. Программа должна обеспечивать: •начальное формирование каталога файлов; •вывод каталога файлов; •удаление файлов,дата создания которых раньше заданной; •выборку файла с наибольшим количеством... http://www.cyberforum.ru/cpp-beginners/thread905884.html
runtime ошибка C++
Ребят, есть такой код, делал по учебнику Страуструпа. #include "std_lib_facilities.h" int area(int length, int width) { return length*width ; } int framed_area(int x, int y) { return area(x-2,y-2);
C++ Задан массив,состоящий из n элементов.Подсчитать число членов,принадлежащих отрезку[a,b].
Задан массив,состоящий из n элементов.Подсчитать число членов,принадлежащих отрезку.
C++ Заполнение двумерного массива (матрицы) http://www.cyberforum.ru/cpp-beginners/thread905860.html
Необходимо реализовать заполнение двумерного массива (матрицы) по рисунку №9. Я смогла найти похожую, но там похожий рисунок №7, самой изменить не получается. Вот код для рисунка №7: #include <iostream> using namespace std; int main() {
C++ Указатели. В массиве b(25), сформированном случайным образом В массиве b(25), сформированном случайным образом, найти количество элементов, удовлетворяющих условию l<bi<m, где l и m - заданные числа. подробнее

Показать сообщение отдельно
MrGluck
Ворчун
Эксперт CЭксперт С++
6677 / 3858 / 511
Регистрация: 29.11.2010
Сообщений: 10,217
18.06.2013, 22:28     сортировка массива выбором
Цитата Сообщение от wolf Посмотреть сообщение
MrGluck хм где должны быть отступы? вроде так везде
ну например вот так ведь лучше будет
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 <ctime>
#include <cstdlib>
#include <conio.h>
#include <clocale>
 
using namespace std;
 
void ChoicesSort(int*, int); // объявление функции сортировки
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int n; // Количество элементов массива
    cout << "Введите размер массива: ";
    cin >> n;
    cout << endl;
    cout << "Массив: " << endl;
    int *mas = new int [n];
    srand(time(NULL));
    for (int i = 0; i < n; i++)
    {
        mas[i] = rand() % 200 - 100; // заполняем массив случайными числами
        cout << mas[i] << " "; // выводим массив на экран
    }
    cout << "\n\n";
 
    ChoicesSort(mas, n); // вызываем функцию сортировки Выбором
    cout << "Отсортированный массив: " << endl;
    for (int i = 0; i < n; i++)
    {
        cout << mas[i] << " "; // Вывод на экран отсортированного массива
    }
    cout << "\n";
    getch();
    return 0;
}
 
void ChoicesSort(int* Perestanovka, int length) // сортировка Выбором
{
    for (int j = 0; j < length; j++)
    {
        int temp = Perestanovka[0]; // временная переменная, храненящая значения перестановки
        for (int z = j + 1; z < length; z++)
        {
            if (Perestanovka[j] > Perestanovka[z])
            {
                temp = Perestanovka[j];
                Perestanovka[j] = Perestanovka[z];
                Perestanovka[z] = temp;
            }
        }
    }
}
Далее, обратите внимание на то, что заголовочные файлы обрамлены угловыми скобками, а не кавычками. В кавычках записывают пользовательские файлы.
Также заметьте, что добавлен cstdlib. Именно в нем содержаться функции srand, rand, system. iomanip здесь не нужен, а в conio.h содержится объявление функции _getch(). Вместо устаревшего сишного time.h используется ctime. Для управления локалью требуется файл clocale, и не говорите мне, что работает без него, нет никаких гарантий, что он подцепится хедером iostream.

Сразу после расстановок код стало можно читать. И сразу становится видно, что память вы не освобождаете.
delete [] mas; перед выходом с main (перед return).
Цитата Сообщение от wolf Посмотреть сообщение
заглавных ведь букв тут нету)
а тут
Цитата Сообщение от wolf Посмотреть сообщение
void ChoicesSort(int*, int);
есть
функцию надо бы назвать сhoicesSort, хотя лучше sortChoises (дело вкуса)

И последнее: вот вам пузырек, с ним разбирайтесь
C++
1
2
3
4
5
6
7
8
9
10
11
void bubbleSort(int *arr, const size_t size)
{
    for (size_t i=0; i < size; i++)
        for (size_t j = size-1; j > i; j--)
            if (arr[j] < arr[j-1] )
            {
                int tmp = arr[j];
                arr[j] = arr[j-1];
                arr[j-1] = tmp;
            }
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru