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

Преобразовать массив таким образом, чтобы элементы, равные нулю, располагались после всех остальных - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Насчёт числа знаков после запятой http://www.cyberforum.ru/cpp-beginners/thread759124.html
Вот например у меня массив с числами, у которых по 5 знаков после запятой. Как мне (с помощью какой функции или операции) сделать так чтобы у этих чисел, было по 3 знака после запятой двумя способами...
C++ Ошибка << Здравствуйте! Подскажите пожалуйста куак решить данную проблему... http://www.cyberforum.ru/cpp-beginners/thread759119.html
C++ Сумму элементов массива, расположенных между первым и последним отрицательными элементами
Задание: Нужно найти сумму элементов массива, расположенных между первым и последним отрицательными элементами. вот сама программа, только она не считает между отрицательными элементам, она...
перезагрузка оператора равно C++
struct pointer_command { public: void * x; public: void set(void * y){x = y; } void operator = (void * y ) {x = y;} void* operator = ( pointer_command& const y ){return y.x;} };
C++ Добавление расширения файла http://www.cyberforum.ru/cpp-beginners/thread759083.html
Подскажите, пожалуйста, как сделать так, чтобы в программе при запуске пользователь вводиил только имя файла а расширение к нему добавляла программа? Нужен сам код вот этой части
C++ Исправить код (Циклы) #include <iostream> using namespace std; int main () { setlocale(0, ""); double x, i = 0; // инициализируем счетчик цикла. double sum = 0; // инициализируем счетчик суммы. ... подробнее

Показать сообщение отдельно
David Sylva
1286 / 948 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
11.01.2013, 23:13
С повторяющимися 0, надо делать так
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
#include <iostream> 
 
int main() 
{ 
    const int size = 10; 
    int array[size] = { 0, 0, 0, 0, 0, 3, 4, 6, 7, 8 }; 
    int i, j; 
    int s = size;
 
    
    for ( i = 0; i < s; ++i) 
        if(array[i] == 0) 
        { 
            for ( j = i; j < size - 1; ++j)  
                array[j] = array[j+1];   
            array[size-1] = 0;  
            i--; 
            s--;
        }
            
        
        std::cout << std::endl;
        for ( i = 0; i < size; ++i) 
            std::cout << array[i] << " "; 
        std::cout << std::endl;
}
Добавлено через 3 минуты
tlittle с нулями стоящими рядом отработает неправильно.

Добавлено через 1 минуту
tlittle вы слишком усложнили эту задачу.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru