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

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

Войти
Регистрация
Восстановить пароль
 
Romich Temniy
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 8
#1

Два массива - C++

07.02.2012, 23:01. Просмотров 269. Ответов 1
Метки нет (Все метки)

В массиве C(57) лежат целые числа. Сформировать новый массив B таким образом, чтобы в него вошли
те элементы массива C, которые по модулю меньше числа 12. Заменить все отрицательные числа массива
B на максимальное значение из массива C.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2012, 23:01     Два массива
Посмотрите здесь:

C++ Два линейных массива
Создать два новых массива: в первый перенести все цифры из исходного массива, во второй - все остальные символы C++
C++ Разделить на два массива
C++ Что-то не хочет пахать :( | Даны два целочисленных массива К(m) и L(n). Найти наибольший элемент массива K, не имеющий себе равных в массиве L.
C++ Из массива А(20) сформировать два массива
Сформировать два массива, заключив в каждый четные и нечетные номера исходного массива соответственно C++
Сформировать два массива C++
C++ Скопировать элементы исходного массива в два других массива, размером вдвое меньше исходного
Создать 2 массива и функцию, соединяющую эти два массива в один C++
Даны два массива. Сформируйте массив С, состоящий из общих элементов массива А и В C++
Сравнить два массива C++
C++ Ввести два одномерных массива и заменить нулями те элементы второго массива, которые есть в первом

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
AzaKendler
214 / 116 / 9
Регистрация: 30.05.2011
Сообщений: 1,772
07.02.2012, 23:45     Два массива #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
#include <valarray>
#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>
 using std::vector;
 using std::back_inserter;
 using std::cout;
 using std::replace_if;
 using std::copy;
 using std::copy_if;
 using std::max_element;
 using std::ostream_iterator;
 
int main()
{
 
 
int C [57] = {12,-23,4,4,51,67,7,82,1, -45, -5, -7, 8, -4,6,7,
8,9,2,4,5,76,8,-9,-3,2,6,-8,9,9,4,76,-57,9,-8,67,34, -4};// этих чисел достаточно для примера, остальное - нули
 
 vector<int> B;
 B.reserve(35);
 
 copy_if(C,C+57,back_inserter<vector<int>>(B),[](int a)->bool{return abs(a)<12;});
 cout<<"first psrt of task"<<"\n";
 copy(B.begin(),B.end(),ostream_iterator<int>(cout," "));
 
 int maxval = *max_element(C,C+57);
 replace_if(B.begin(),B.end(),[](int a)->bool{return a<0;},maxval);
 cout<<"\n";
 cout<<"second psrt of task"<<"\n";
 copy(B.begin(),B.end(),ostream_iterator<int>(cout," "));
 return 0;
}
Миниатюры
Два массива  
Yandex
Объявления
07.02.2012, 23:45     Два массива
Ответ Создать тему
Опции темы

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