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

удаление нулей из массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверить, есть ли в матрице хотя бы один столбец, содержащий отрицательный элемент, и найти его номер. Уменьшить элементы найденного столбца вдвое http://www.cyberforum.ru/cpp-beginners/thread762483.html
Привет коллеги. Помогите составить программу в Си.
C++ Реализовать базу данных в виде массива Основываясь не этой структуре: struct clientData //клиент { int accNum; //номер счёта char Sur; //фамилия char Name; //Имя float balance; //Баланс (сумма на счету, или долг) }; реализовать базу данных в виде массива. Должно быть главное меню со следующими операциями: Добавить запись http://www.cyberforum.ru/cpp-beginners/thread762472.html
Вывод в обратном порядке C++
Даны два целых числа a и b. Написать программу, которая будет выводить значения а и b в обратном порядке, то есть сначала b, потом а. Input В первой строке записано количесвто Т тестов. В каждой из последующих Т строк содержаться тесты. В каждой строке записаны два числа а и b. (-32000 < a, b < 32000). Output Для каждого тестового случая вывести в отдельную строку два числа через...
Указатели и ссылки? C++
Ниже приведёна программы которая вызывает функцию. В функции происходит следующее создаются 2 массива в которые записыватся чётные и нечётные числа соответственно. Не понимаю следующего, если я передаю в функцию просто указатели на массивы int* first, int* second, то в нутри функции создаются динамические массивы и после окончания работы функции указатели снова становятся нулевыми, а если...
C++ векторы и итераторы http://www.cyberforum.ru/cpp-beginners/thread762391.html
void delete_duplicate_neiron(vector<vector <SNeiron> ::iterator >nw) // контейнер имеет 8 значений { for (unsigned int i = 0; i < nw.size() ; i++) { vector <SNeiron> ::iterator ni = nw; for (unsigned int j = 0; j < nw.size() ; j++) { vector <SNeiron> ::iterator nj =nw; if(i == j) continue;
C++ Указатель и массив #include <iostream> #include <conio.h> using namespace std; int main () { setlocale (0,""); int *a,size; cout << "Укажите размер массива: "; cin >> size; a=(int*)malloc(size*sizeof(int)); подробнее

Показать сообщение отдельно
sandye51
программист С++
682 / 584 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
15.01.2013, 17:00     удаление нулей из массива
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>
#include <algorithm>
#include <iterator>
 
template <typename T>
void print_array(const char* message, T* array, unsigned int size)
{
    std::cout << message << std::endl;
    std::copy(array, array + size, std::ostream_iterator<T>(std::cout, " "));
    std::cout << std::endl;
}
 
int main()
{
    int array[] = { 1, 2, 3, 0, 0, 2, 30, 5, 0 };
    unsigned int size = sizeof(array) / sizeof(array[0]);
    
    print_array("Массив до удаления: ", array, size);
    
    int* iter = (int*)std::remove_if(array, array + size, std::bind2nd(std::equal_to<int>(), 0));
    size = static_cast<unsigned int>(iter - array);
    
    print_array("Массив после удаления: ", array, size);
    
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru