Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95

Быстрая сортировка выводит неверно

23.05.2016, 12:51. Показов 1157. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Вообщем вот мой код, он должен быть правильным, но почему-то я хватаю где-то мусор при выводе
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
// chrome_test.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
 
    float X = 0;
    const int TopX = 40;
 
    
 
    int LR = 1;
    float step = 0.5;
    int i, j;
    float arr[TopX];
 
    cout << "This is our start array" << endl;
    for (i = 0; i < TopX; ++i)
    {
        while (X < TopX)
        {
            arr[i] = X + LR;
            LR *= -1;
 
            X += step;
            cout << arr[i] << " ";
        }
    }
 
    cout << "\nSorted array\n";
    for (i = 0; i < TopX; i++) {  // цикл проходов, i - номер прохода
        float x = arr[i];
 
        // поиск места элемента в готовой последовательности 
        for (j = i - 1; j >= 0 && arr[j] > x; j--)
            arr[j + 1] = arr[j];    // сдвигаем элемент направо, пока не дошли
 
                                // место найдено, вставить элемент
        arr[j + 1] = x;
    }
    
    for (i = 0; i < TopX; i++) 
    cout << arr[i] << " ";
    
    cin.get();
    return 0;
}
}
Миниатюры
Быстрая сортировка выводит неверно  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.05.2016, 12:51
Ответы с готовыми решениями:

Быстрая сортировка(сортировка Хоара). Отсортировать фрагмент массива
Мне нужно отсортировать фрагмент массива, расположенный между первым и последним отрицательным элементом. Немогу понять как устоновить...

Быстрая сортировка (сортировка Хоара) для связных списков
есть у кого готовый алгоритм? или подскажите как реализовать

Код неверно выводит массивы
всем привет. в общем у меня такая проблема: установил Visual Studio 2013, начал на нем познавать язык С++, и тут такая проблема, когда я...

11
27 / 27 / 16
Регистрация: 18.05.2016
Сообщений: 128
23.05.2016, 13:47
Попробуй заменить вывод в последнем цикле на
C++
1
printf("%f ", arr[i]);
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
23.05.2016, 14:45
МихаилЗеленски, Строки 23-32. Внутренний цикл (while) выполняется только для i==0 (после того как из него вышли на нулевой итерации условие всегда ложно)
0
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95
23.05.2016, 16:55  [ТС]
avgoor, строки на которые вы ссылаетесь создают (генерируют элементы) массив(а), поэтому я не пойму как это может влиять на сортировку.... Можно подробнее, пожалуйста
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
23.05.2016, 17:11
МихаилЗеленски, Перенесите 31 строку в цикл for (после фигурной скобки от while) и посмотрите ваш "сформированный массив".

Добавлено через 2 минуты
31 первая строка у вас много раз выводит arr[0]. для i>0 программа на 31 строку не попадает.
0
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95
23.05.2016, 17:50  [ТС]
Да, согласен, выводится мусор... Но что же делать?...

Добавлено через 1 минуту
no_attention , увы, не помогло
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
23.05.2016, 17:54
Цитата Сообщение от МихаилЗеленски Посмотреть сообщение
Но что же делать?
Из вашего кода не понятно как вы хотите сформировать массив. Задание в студию.
0
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95
23.05.2016, 18:01  [ТС]
Задание : Разработать алгоритм и программу формирования заданой последовательности, соответсвенно вашему варианту и отсортировать её. При формировании последовательностей использовать функции вида : sin(k+x) и т.п.

П.С. Я задание себе немножко упростил, так как не понял как мне организовать синусоиду под углом.... Поэтому делал просто зигзаг
Изображения
 
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
23.05.2016, 18:12
Цитата Сообщение от МихаилЗеленски Посмотреть сообщение
Я задание себе немножко упростил
Вы издеваетесь? Где формула, или хотя бы нормальный график (из вашего ничего не понятно, там даже масштаба нет)
0
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95
23.05.2016, 18:29  [ТС]
Извините, но я сам получил это от преподавателя)) Пределы задать самому, формулы придумай сам, запрограммируй сам, вот я на основе этого и хотел сделать зигзаг...) или вам нужен графиу/формула упрощённого мной варианта? дк он в коде....
0
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
23.05.2016, 19:04
Лучший ответ Сообщение было отмечено МихаилЗеленски как решение

Решение

Цитата Сообщение от МихаилЗеленски Посмотреть сообщение
хотел сделать зигзаг..
Выкиньте КЕМ строки 25, 26 и 32
C++
1
2
3
4
5
6
7
8
for (i = 0; i < TopX; ++i)
{
    arr[i] = X + LR;
    LR *= -1;
 
    X += step;
    cout << arr[i] << " ";
}
1
 Аватар для МихаилЗеленски
1 / 1 / 2
Регистрация: 14.10.2015
Сообщений: 95
23.05.2016, 19:44  [ТС]
Блин, спасибо тебе большое...) глупая ошибка...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.05.2016, 19:44
Помогаю со студенческими работами здесь

Неверно выводит вектор пар
Здравствуйте. Цикл выводит нули вместо ожидаемых чисел. В чем же ошибка #include&lt;iostream&gt; #include&lt;vector&gt;

Сортировка Слиянием vs Быстрая Сортировка - что лучше
Народ, помогите разобраться какой из методов сортировки лучше &quot;Сортировка Слиянием&quot; или &quot;Быстрая Сортировка&quot;: у быстрой...

Метод ранга. Неверно выводит результат
Добрый день, уважаемые форумчане! Столкнулся с такой проблемой. Есть задача, вот её условия: Группе экспертов необходимо определить...

C/C++ FAQ :: Быстрая сортировка (сортировка Хоара)
Вопрос, скорее академический, по мотивам реализации. Вот в faq приведена реализация этого метода сортировки на C++. В коде есть следующий...

Быстрая сортировка (сортировка методом Хоара)
Ввести массив x1,x2,...,x20 в диапазоне . Требуется расположить отрицательные элементы в порядке убывания. Вывести массивы до и после...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru