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

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

Восстановить пароль Регистрация
 
Romich Temniy
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 8
07.02.2012, 23:01     Два массива #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++ Создать два массива. Вычислить количество тех элементов каждого массива, для которых выполняется неравенство: 2<элемент массива<10
Известно, что среди элементов массива два и только два равны между собой. Напечатать их индексы C++
С помощью функции определения среднего значения элементов массива обработать два массива разной размерности C++
Сформировать два массива, заключив в каждый четные и нечетные номера исходного массива соответственно C++
C++ Найти среднее арифметическое элементов массива, сравнить два массива поэлементно
Известно, что среди элементов массива два и только два равны между собой. Напечатать их индексы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
AzaKendler
 Аватар для 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     Два массива
Ответ Создать тему
Опции темы

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