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

Отсортировать элементы массива по возрастанию с сохранением позиций нулей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ пишу программу, компилирую, у меня на компьютере работает, а на других нет http://www.cyberforum.ru/cpp-beginners/thread50767.html
Создаю пустой проект в Visual Studio c++, добавляю файл c++, пишу программу, компилирую, у меня на компьютере работает, а на других нет, в интернете читал говорят сделать что то статическим, понять не как не могу, помогите чайнику пожалуйста.....
C++ Массив указателей на кучу векторов нужно создать n - ое количество векторов. Как их объявить??? подскажите плиз))))) http://www.cyberforum.ru/cpp-beginners/thread50762.html
C++ [помощь по литературе]
Здраствуйте, ищу литературу на такую тему как, с помощью С++ выключать компьютер, открывать CD-rom, выключать монитор, в общем по управлению процессами, и устройствами. Извиняюсь если тема уже была, поиск юзал, но толком не нашел ничего. Win Api как-то связан с тем, что я ищу?
C++ Ханойские башни
Кто-то из вас может решить адачу о ханойских башнях на си++ рекурсивным способом, а тоя никак не могу догнат что в даное задаче является элеменнтарной задачей и как ее проверять... Если кому не трудно, приведите код.. Я очень хочу разобратся с алгоритмом ток, сам не доганяю((
C++ Движение объекта по заданной траектории http://www.cyberforum.ru/cpp-beginners/thread50747.html
Имеются: замкнутая фигура (далее траектория), TrackBar её масштабирования, кнопки изменения цвета фона и самой траектории. http://pic.ipicture.ru/uploads/090913/thumbs/c3WPY2pUaY.jpg Пожалуйста, подскажите, как реализовать следующие вопросы: 1) Как сделать, чтобы масштабирование формы происходило одновременно симметрично по обеим осям (если "тянуть за уголок") и при этом изменялись в...
C++ По умолчанию Метод шифрования\дешифрования методом гаммирования, используя для гаммы алгоритм случайных чисел... Кто знаком с этим? Нужно написать такую штуку на сях в билдере, даже есть приблизительное ТЗ, только оно на Делфи, и там нет алгоритма случайных чисел. Вот оно: http://nnnet2.jino-net.ru/s2/gammi.doc Кто может помочь..? подробнее

Показать сообщение отдельно
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
14.09.2009, 00:48     Отсортировать элементы массива по возрастанию с сохранением позиций нулей
Э не, Граф, не все так просто, я тоже до этого дошел,
вот
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
#include <iostream>
 
short Left_Pos(int* mas, short n, short cur)
{
    short i;
    for(i = cur; i < n; ++i)
        if(mas[i] < 0)
            return i;
    return -1;
}
short Right_Pos(int* mas, short n, short cur)
{
    short i;
    for(i = cur; i < n; ++i)
        if(mas[i] > 0)
            return i;
    return -1;
}
int main()
{
    setlocale(LC_ALL, "Russian");
    short n(10), i;
    int mas[] = { 5, 0, 6, 8, 9, -1, -6, 4, -3, -8 };
    std::cout<<"Введите элементы массива:\n";
    for(i = 0; i < n; ++i)
        std::cout<<mas[i]<<' ';
    std::cout<<'\n';
    short pos_l(0), pos_r(0), ind_fp(0); 
 
    for(i = 0; i < n/2+1; ++i)
    {
        pos_l = Left_Pos(mas, n, pos_l);
        pos_r = Right_Pos(mas, n , pos_r);
        if(pos_l != -1 && pos_r != -1)
        {
            if(pos_l > pos_r)
                mas[pos_l] ^= mas[pos_r] ^= mas[pos_l] ^= mas[pos_r];
        }
        else
            break;
    }
    for(i = 0; i < n; ++i)
        std::cout<<mas[i]<<' ';
 
    std::cout<<'\n';
    system("pause");
    return 0;
}
, но дело в том, что надо сохранить порядок как нулей, так и отрицательных и положительных элементов
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru