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

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

23.05.2016, 12:51. Показов 1131. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru