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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Yga@
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 15
#1

Из массива Х(N) все положительные элементы записать в массив У(К), а все отрицательные элементы – в массив Z(М)... - C++

14.06.2013, 14:06. Просмотров 857. Ответов 1
Метки нет (Все метки)

Пожалуйста помогите решить задачку на си++, заранее спасибо
Из массива Х(N) все положительные элементы записать в массив У(К), а все отрицательные элементы – в массив Z(М). Найти в каждом массиве максимальный по модулю элемент. Удалить в каждом массиве первый элемент. В программе написать функции: формирования массивов Y и Z, определения максимального по модулю элемента, удаления элемента.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2013, 14:06     Из массива Х(N) все положительные элементы записать в массив У(К), а все отрицательные элементы – в массив Z(М)...
Посмотрите здесь:
Все положительные элементы из массива записать в массив A, а отрицательные в массив B C++
В массив X записать сначала все положительные элементы M1 а затем все отрицательные элементы M2 C++
Все положительные элементы записать в массив Y(k), а все отрицательные элементы - в массив Z(m) C++
Записать все положительные элементы матрицы в массив arrP, а отрицательные - в массив arrN C++
C++ Массив: Сформировать третий массив, в который включить все отрицательные элементы массива А и все максимальные элементы массива В.
C++ Из массива X(N) все положительные элементы записать в массив Y(k).
C++ Из массива положительные элементы перетащить в первый массив, а все отрицательные во второй.
Из заданного массива C записать в массив А чётные положительные элементы, а в массив В нечётные отрицательные C++
C++ Преобразовать массив, расположив сначала все положительные элементы, а потом - все отрицательные
Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом все отрицательные C++
Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом – все отрицательные C++
C++ Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом все отрицательные

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Модератор
Эксперт CЭксперт С++
6998 / 4169 / 594
Регистрация: 29.11.2010
Сообщений: 11,050
14.06.2013, 16:48     Из массива Х(N) все положительные элементы записать в массив У(К), а все отрицательные элементы – в массив Z(М)... #2
Сразу оговорюсь. Тут "попроще":
Сформировать 2 массива: первый из положительных элементов, второй - из отрицательных
Из отрицательных элементов массива А сформировать массив Р
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <iostream>
#include <algorithm>
#include <random>
#include <iterator>
#include <vector>
#include <cstddef>
#include <cmath>
 
template <typename ForwardIterator>
ForwardIterator max_abs_element(ForwardIterator beg, ForwardIterator end)
{
    typedef const typename ForwardIterator::reference const_ref;
    return std::max_element(beg, end, [](const_ref x, const_ref y)
        { return abs(x) < abs(y); } );
}
 
 
int main()
{
    typedef std::vector<int> v_int;
    const std::size_t N = 20;
    v_int X(N), Y, Z;
    std::mt19937 gen { std::random_device()() };
    std::uniform_int_distribution<int> uid(-50, 50);
    auto print_v = [](const v_int &v)
    {
        std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " ") );
        std::cout << std::endl;
    };
    auto gen_v = [&uid, &gen](v_int &v)
    {
        std::generate(v.begin(), v.end(), [&uid, &gen]() -> int { return uid(gen); } );
    };
    auto sortOut_v = [](const v_int &v1, v_int &v2, v_int &v3)
    {
        for (auto &x : v1)
            x < 0 ? v3.push_back(x) : v2.push_back(x);
    };
    auto press_key_to_win = [&print_v](const char *name, v_int &v)
    {
        std::cout << name << ":\n";
        print_v(v);
        std::cout << "Max abs: " << *max_abs_element(v.begin(), v.end())
                  << "\nAfter deleting first element:\n";
        v.erase(v.begin());
        print_v(v);
        std::cout << std::endl;
    };
 
    gen_v(X);
    press_key_to_win("X", X);
    sortOut_v(X, Y, Z);
    press_key_to_win("Y", Y);
    press_key_to_win("Z", Z);
}
Yandex
Объявления
14.06.2013, 16:48     Из массива Х(N) все положительные элементы записать в массив У(К), а все отрицательные элементы – в массив Z(М)...
Ответ Создать тему
Опции темы

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