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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Создайте функцию нахождения количества элементов одномерного массива, по модулю превосходящего введенное http://www.cyberforum.ru/cpp-beginners/thread1210177.html
Помогите пожалуйста!!! Создайте функцию нахождения количества элементов одномерного массив, по модулю превосходящего введенное с клавиатуры значение k. Примените функцию к целочисленным массивам A(N), B(M), где N и M - заданы.
C++ Как правильно освободить память Написал вот такой костыль: wchar_t* getDate() { time_t seconds = time(NULL); tm timeinfo = *(localtime(&seconds)); return _wasctime(&timeinfo); }; Теперь его использую в main: http://www.cyberforum.ru/cpp-beginners/thread1210175.html
C++ Проверка корректности введенного города игра "Города"
Здравствуйте, пишу программку "Города", т.е. пользователь называет какой-нибудь город, допустим, "Омск". Компьютер считывает последнюю букву и на нее осуществляет поиск города в векторе (города туда записываются из файла) и выдает этот город, предварительно записав его в "использованные". Все подфункции работают, единственная проблема с проверкой: следует проверить, ввел ли пользователь город на...
Из данной задачи составить параллельную программу вычисления произведения элементов вектора C++
Помогите, пожалуйста, из данной задачи составить параллельную программу вычисления произведения элементов вектора, используя функцию широковещательной рассылки #include "mpi.h" #include <time.h> #include <stdio.h> #include <stdlib.h> int main (int argc, char *argv)
C++ Решето Эратосфена с графикой http://www.cyberforum.ru/cpp-beginners/thread1210138.html
Нужно сделать решето эратосфена, с введением чисел от 2 до N, и чтобы выводил все числа и вычеркивал, не знаю как это реализовать, знания языка на уровне структурного, нужно сделать примерно как на картинке, кодю в VisualStudio, ну и не очень знаком вообще с реализацией графики, помогите
C++ Передвинуть элементы в массиве указателей на объекты fstream Здравствуйте. Есть прога в которой одновременно надо обрабатывать до 10 файлов. Для этого создан массив указателей на fstream. Проблема такая: при закрытии, например 4-го файла, надо в массиве указателей на файлы сдвинуть элементы к началу массива, начиная с 4 позиции. То есть: fstream fList; //массив указателей на файлы ........................... for (int i = 4; i < 10; i++) ... подробнее

Показать сообщение отдельно
RaiaNKnight
 Аватар для RaiaNKnight
96 / 70 / 7
Регистрация: 29.06.2011
Сообщений: 458
Записей в блоге: 1
17.06.2014, 08:29     Преобразовать массив так чтобы все ненулевые элементы предшествовали нулевым
На самом деле в сортировке нет необходимости, достаточно просто переставить нулевые элементы в конец:

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
#include <iostream>
using namespace std;
 
int main()
{ 
    int *a, n;
    cout << "vvedite" << endl;
    cin >> n;
    a = new int[n];
 
    for (int i=0; i<n;i++) { 
        cin >> a[i];
    }
 
    int j = n - 1;
    for( int i = 0; i < j; ++i) {
        if( a[i] == 0 ) {
            while( a[j] == 0 && j > i ) {
                --j;
            }
            int temp = a[i];
            a[i] = a[j];
            a[j] = temp;        
        }
    }
 
    for( int i = 0; i < n; ++i ) {
         cout << a[i] << ' ';
    }
    delete []a;
 
    return 0;
}
 
Текущее время: 20:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru