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

Функция должна удалить из массива все отрицательные числ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не могу скомпилировать! http://www.cyberforum.ru/cpp-beginners/thread1105287.html
#include "stdafx.h" #include<cmath> using namespace std; int Sign; int main(int argc, char *argv) { setlocale(LC_ALL, "Russian"); float x, y; cout << "Ввести x:" << endl; cin >> x;
C++ Сумма младшего и старшего разряда Напишите программу, считающую сумму старшего и младшего разряда заданного с клавиатуры целого числа. C++ http://www.cyberforum.ru/cpp-beginners/thread1105273.html
Нахождение обратной матрицы C++
Здравствуйте. Помогите мне пожалуйста. Мне нужна программная реализация на с++ нахождения обратной матрицы с помощью алгебраических дополнений.
Правильно? C++
Y = pow( pow(x,1/3) + sign( pow(x,1/5)),sin(x)) http://www.cyberforum.ru/attachments/369360d1393257866
C++ Какое изначальное выражение которое надо вычислить? http://www.cyberforum.ru/cpp-beginners/thread1105216.html
Привет всем!может кто-нить по коду сказать какое изначальное выражение которое надо вычислить? //#include "stdafx.h" #include <iostream> #include <conio.h> #include <stdio.h> using namespace...
C++ Побитовые операции в Си. Изменение отдельных битов числа Собственно задание такое: "Дано длинное целое неотрицательное число k. Получить целое число, отбросив нечетные биты данного числа k." Не совсем понимаю какой тут должен быть алгоритм... То есть, если... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9693 / 5643 / 962
Регистрация: 25.07.2009
Сообщений: 10,847
27.02.2014, 18:41
Цитата Сообщение от Kwangmyongsong Посмотреть сообщение
все еще жду..
Вы уж простите нас нерасторопных!
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>
#include <algorithm>
#include <functional>
#include <iterator>
 
int * remove_negatives(const int * array, size_t & count) {
    size_t pos_count = std::count_if(array, array + count, std::bind2nd(std::greater<int>(), -1));
    if ( ! pos_count ) {
        return NULL;
    }
    else {
        int * tmp = new int [ pos_count ];
        std::remove_copy_if(array, array + count, tmp, std::bind2nd(std::less<int>(), 0));
        count = pos_count;
        return tmp;
    }
}
 
int main() {
    int array[] = { 1, -2, -3, 4, 5, -6 };
    size_t count = sizeof(array) / sizeof(*array);
    int * no_negative = remove_negatives(array, count);
    
    if ( ! no_negative )
        std::cout << "Only negative values, nothing to return!";
    else
        std::copy(no_negative, no_negative + count, std::ostream_iterator<int>(std::cout, " "));
    
    delete [] no_negative;
    std::cout << std::endl;
    
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru