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

Функция должна удалить из массива все отрицательные числ - 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 std; float d=1;
C++ Побитовые операции в Си. Изменение отдельных битов числа Собственно задание такое: "Дано длинное целое неотрицательное число k. Получить целое число, отбросив нечетные биты данного числа k." Не совсем понимаю какой тут должен быть алгоритм... То есть, если у меня машинное слово 32 бита, тогда в результате должно получится число с 16-ю значащими битами? И как это реализовать? подробнее

Показать сообщение отдельно
easybudda
Эксперт CЭксперт С++
9470 / 5483 / 927
Регистрация: 25.07.2009
Сообщений: 10,507
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;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru