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

Ошибка при сортировке Шелла - C++

Восстановить пароль Регистрация
 
pitline
41 / 9 / 4
Регистрация: 21.12.2013
Сообщений: 208
03.05.2014, 01:16     Ошибка при сортировке Шелла #1
Сортирую массив, вношу в него 46 элементов случайных значений в диапазоне от 1 до 26, после сортирую методом Шелла, но выдает ошибку, не пойму в чем загвоздка
вот сам код
C++ (Qt)
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <conio.h>
 
using namespace std;
int main()
{
  srand(time(0));
  int k, m=0;
  int arr[25];
  for (int i=0; i !=25; i++)
  {
    arr[i]=1+rand() % 46;
    m++;
  }
    for(int d=m/2; d > 0; d/=2)
                for(int i=d; i < m; i++)
            for(int j = i; j>=d; j -= d)
                if (arr[j - d] < arr[j])
                      swap(a[j], a[j-d]);
    for(int i=0;i<26;i++)
    {
     std:cout << arr[i] << endl;
    }
    _getch();
    return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2014, 01:16     Ошибка при сортировке Шелла
Посмотрите здесь:

C++ Ошибка в порязрядной сортировке?!
C++ Ошибка в сортировке
Ошибка в сортировке C++
Ошибка в пирамидальной сортировке C++
C++ Ошибка в быстрой сортировке
Структыру.Ошибка в сортировке C++
Ошибка при сортировке пузырьком C++
Ошибка доступа при чтении адреса в алфавитной сортировке C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stawerfar
 Аватар для stawerfar
141 / 55 / 4
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
03.05.2014, 01:22     Ошибка при сортировке Шелла #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Строка 22 выходишь за пределы массива

Добавлено через 55 секунд
C++
1
i<25
напиши так
pitline
41 / 9 / 4
Регистрация: 21.12.2013
Сообщений: 208
03.05.2014, 17:06  [ТС]     Ошибка при сортировке Шелла #3
Цитата Сообщение от stawerfar Посмотреть сообщение
Строка 22 выходишь за пределы массива
Добавлено через 55 секунд
Код C++
1
i<25
напиши так
И это правильный ответ!!
Получите печенюшку и плюсик
Yandex
Объявления
03.05.2014, 17:06     Ошибка при сортировке Шелла
Ответ Создать тему
Опции темы

Текущее время: 12:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru