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

Задача на сортировку массива по возрастанию методом выбора минимального элемента. Не правильно работает код - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Методы отладки в Dev-cpp http://www.cyberforum.ru/cpp-beginners/thread1082227.html
Dev-cpp 4.9.9.2 Разкажите про отладку в Dev-cpp. Я лично программирою в MS Visual Studio 2010, но скоро мне нужно эхать на соревнования по программировании, а там полько эта галимая IDE (не в обиду тем кто на ней программирует). Помогите!!!!!
C++ Копирование согласных букв Ребят дали задание : Пользователь вводит строку, все нечётные символы из этой строки копируются в другую строку, длинной ровно под количество этих символов. Примерно представляю, но не понимаю как написать, помогите с кодом пожалуйста :3 P.S. Согласные из англ алфавита http://www.cyberforum.ru/cpp-beginners/thread1082224.html
C++ Считать Z до тех пор пока выражение под знаком логарифма больше 0.05
помогите решить и составить блок схему
Вычислить значение C++
помогите решить и составить блок схему
C++ Получить квадратную матрицу порядка n http://www.cyberforum.ru/cpp-beginners/thread1082214.html
помогите решить и составить блок схему
C++ Элементы последовательности умножить на 10 помогите составить блок схему и решить на языке программирования с++ подробнее

Показать сообщение отдельно
AlexEden
0 / 0 / 0
Регистрация: 11.07.2013
Сообщений: 20
26.01.2014, 20:34     Задача на сортировку массива по возрастанию методом выбора минимального элемента. Не правильно работает код
Моя задача отсортировать массив методом выбора минимального элемента. Он заключается в следующем. Ищем в массиве минимальный элемент и ставим его на первое место. Затем из оставшихся элементов также ищем минимальный и ставим на следующее место и т.д. Я написал код, программа запускается, но дело в том, что в отсортированном массиве постоянно вместо какого-либо элемента мне помещается вот это: "-858993460". Вот код:

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
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
 
 
using namespace std;
 
 
const int n = 5;
 
 
int main()
 
{
    setlocale (LC_ALL, "Russian");
 
    int i, j, nmin, a[n], c;
 
    srand (time (NULL));
 
    for (i = 0; i < n; i++)
    {
        a[i] = -10 + rand()%20;
 
        cout << "a[" << i << "] = " << a[i] << endl;
    }
 
    for (i = 0; i < n-1; i++)
    {
        nmin = a[i];
 
        for (j = i + 1; j < n - 1; j++)
                if (a[j] < a[nmin])
                    nmin = j;
 
       if (nmin != i)
       {
        c = a[i];
        a[i] = a[nmin];
        a[nmin] = c;
       }
        
    }
    
    cout << "Отсортированный массив:" << endl;
 
    for (i = 0; i < n; i++)
    {
        cout << "a[" << i << "] = " << a[i] << endl;
    }
 
    getch();
    return 0;
}
У меня просьба проверить его на ошибки.
И вот скриншоты того, что выдает программа.

Задача на сортировку массива по возрастанию методом выбора минимального элемента. Не правильно работает код

Задача на сортировку массива по возрастанию методом выбора минимального элемента. Не правильно работает код

У меня просьба не просто написать мне код, а объяснить. Заранее благодарю вас!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru