Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Kristal_Sharko
1 / 1 / 1
Регистрация: 27.01.2014
Сообщений: 55
#1

Положительные элементы массива занести один за другим в другой массив. - C++

03.02.2014, 17:10. Просмотров 703. Ответов 4
Метки нет (Все метки)

Положительные элементы массива занести один за другим в другой массив.
Вычислить произведение элементов массива, расположенных после минимального.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2014, 17:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Положительные элементы массива занести один за другим в другой массив. (C++):

Положительные элементы массива занести один за другим в другой массив
Положительные элементы массива занести один за другим в другой массив . ...

Все положительные элементы двумерного массива записать в один одномерный массив, а остальные в другой
Дан двумерный массив размером n на n заполнены целыми числами. все его...

Создать два новых массива, в один из которых поместить положительные элементы массива, а в другой отрицательные и нулевые элементы
Написать программу , которая вводит с клавиатуры массив из N вещественных чисел...

Скопировать из исходного вектора положительные элементы в один массив, а отрицательные - в другой
Переписать отдельно в разные массивы положительные и отрицательные элементы...

Все положительные элементы матрицы записать в один одномерный массив, а остальные в другой
дан двумерный массив размерностью Н, заполненный целыми числами, все его...

Переписать в другой массив все положительные элементы массива
Дан массив A размера N. Сформировать новый динамический массив B, в который...

4
vovacreme
61 / 61 / 33
Регистрация: 14.01.2014
Сообщений: 145
03.02.2014, 17:54 #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
#include <iostream>
#include <vector>
#include <ctime>
#include <iterator>
#include <algorithm>
using namespace std;
 
int main()
{
    srand(time(0));
    size_t SIZE = 10, i = 0;
    vector<int> vec, vec1;
    while (i++ < SIZE)
        vec.push_back(10 - ( rand() % 20) );
    copy(vec.begin(), vec.end(), ostream_iterator<int>(cout, " "));
    copy_if(vec.begin(), vec.end(), back_inserter(vec1), [](int x) { return !( x < 0 ); });
    cout << endl;
    copy(vec1.begin(), vec1.end(), ostream_iterator<int>(cout, " "));
    int mult = 1;
    vector<int>::iterator min_it = min_element(vec1.begin(), vec1.end());
    bool flag = false;
    for (++min_it; min_it != vec1.end(); ++min_it)
    {
        mult *= *min_it;
        flag = true;
    }
    if (flag)
        cout << "\nProduct = " << mult << endl;
    else
        cout << "\nNo elements after min" << endl;
    system("pause");
}
0
casper007
69 / 69 / 58
Регистрация: 12.12.2013
Сообщений: 420
03.02.2014, 17:57 #3
C++
1
2
3
4
5
6
7
8
9
int mas1[n][m]; int mas2[n][m];
for (int i=0; i<n;i++)
{
for (int j=0;j<m;j++)
   {
   if(mas1[i][j]>0) mas2[i][j]=mas1[i][j];
else mas2[i][j]=1;
   }
}
0
Xopecc
33 / 28 / 9
Регистрация: 13.09.2013
Сообщений: 250
03.02.2014, 18:20 #4
Лучший ответ Сообщение было отмечено Kristal_Sharko как решение

Решение

Kristal_Sharko,
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
#include<conio.h>
#include<iostream>
using namespace std;
 
int main(){
    setlocale(LC_ALL, "Russian");
    const int N = 30;
    int Mass[N];
    for (int i(0); i < N; i++)
        Mass[i] = 99 - rand() % 199;
    int min = Mass[0], min_index(0), Plus[N], j(0), op(1);
    for (int i(0); i < N; i++){
        if (Mass[i] < min){
            min_index = i;
            min = Mass[i];
        }
        if (Mass[i] > 0){
            Plus[j] = Mass[i];
            j++;
        }
    }
    for (int i(min_index + 1); i < N; i++)
        op *= Mass[i];
    cout << "Рандомный массив: " << endl;
    for (int i(0); i < N; i++)
        cout << "Mass[" << i << "] = " << Mass[i] << endl;
    cout << "Массив положительных чисел рандомного массива: " << endl;
    for (int i(0); i < j; i++)
        cout << "Plus[" << i << "] = " << Plus[i] << endl;
    cout << "Минимальный элемент рандомного массива: " << min << "(" << min_index << ")" << endl;
    cout << "Произведение элементов после минимального элемента: " << op;
    cout << "\n\nДля выхода нажмите любую клавишу...";
    _getch();
    return 0;
}
1
rangerx
1941 / 1550 / 478
Регистрация: 31.05.2009
Сообщений: 2,913
03.02.2014, 22:25 #5
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
#include <ctime>
#include <cstdlib>
#include <vector>
#include <numeric>
#include <algorithm>
#include <iterator>
#include <functional>
#include <iostream>
 
int main()
{
   using namespace std;
 
   vector<int> a;
   srand(time(nullptr));
   generate_n(back_inserter(a), 10, [](){ return rand() % 20 - 10; });
 
   cout << "a: ";
   for(int x : a)
      cout << ' ' << x;
   cout << '\n';
 
   vector<int> b;
   copy_if(begin(a), end(a), back_inserter(b), [](int x){ return x > 0; });
 
   cout << "b: ";
   for(int x : b)
      cout << ' ' << x;
   cout << '\n';
 
   auto min = min_element(begin(b), end(b));
   if(next(min) != end(b))
      cout << accumulate(next(min), end(b), 1, multiplies<int>());
   else
      cout << "---";
   cout << endl;
}
0
03.02.2014, 22:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2014, 22:25
Привет! Вот еще темы с решениями:

Положительные числа переписать в один массив, а отрицательные - в другой
Задан вектор X . Положительные числа переписать в массив Y, а отрицательные - в...

Повторяющиеся числа из первого массива занести во второй массив только один раз
#include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace...

Переписать отрицательные элементы массива Х в массив У, а положительные элементы массива Х - в массив Z
Задан массив Х(N)(N&lt;=90). Переписать отрицательные элементы массива Х...

Переписать в массив Y положительные элементы а в массив Z отрицательные элементы массива Х N<=40
Помогите уважаемые программисты Нужно написать программу &quot;X(N) Переписать в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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