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

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

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

Создать массив из различных элементов массива - C++

16.11.2012, 08:42. Просмотров 610. Ответов 5
Метки нет (Все метки)

Доброго времени суток. Не могу написать программу. Задание такое: Дан целочисленный массив {a1,a2...an} с количеством элементов n. Создать массив из различных элементов этого массива. Массив должен быть создан с помощью вектора(в чем заключается проблема). Помогите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2012, 08:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создать массив из различных элементов массива (C++):

Создать новый массив из различных элементов исходного массива - C++
дан целочисленный массив а(8), среди элементов есть одинаковые. создать массив из различных элементов массива Создавайте темы с...

Создать массив состоящий из различных элементов исходного массива - C++
Всем привет! Помогите с задачкой, говорят простая, но я не могу ее додумать %-) "Заполнить одномерный числовой массив целыми числами,...

Дан целочисленный массив А[п], среди элементов есть одинаковые. Создать массив из различных элементов А[п] - C++
Помогите пожалуйста с поставленной задачей: Дан целочисленный массив А, среди элементов есть одинаковые. Создать массив из различных...

Создать массив из различных элементов исходного - C++
Кто чем может.Новичок ,только учусь 2. Дан целочисленный массив А, среди элементов которого есть одинаковые. Создать массив из...

Одномерный массив. Создать массив Х суммы среднеарифметического элементов массива А с каждым элементом массива А - C++
Дан массив А.Создать массив Х суммы среднеарифметического элементов массива А с каждым элементом массива А.

Создать массив С какой складываться из нечетных чисел массива А, посчитать количество элементов массива С - C++
Дано целочисловий одномерный массив А, какой состоит из 12 элементов. Создать массив С какой складываться из нечетных чисел массива А,...

5
Illusive
17 / 17 / 0
Регистрация: 11.01.2008
Сообщений: 51
16.11.2012, 10:39 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <vector>
#include <iostream>
#include <iterator>
using namespace std;
int data[12] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120}; 
int main()
{
 vector<int> V1(data, data+12); // создаем вектор V1, заполненный данными из массива 
 cout << "V1 = ";
 copy(V1.begin(), V1.end(), ostream_iterator<int>(cout, " ")); // выводим содержмое V1
 vector<int> V2(V1.rbegin()+3, V1.rbegin()+7); // делаем V2 из неск. эл-тов V1 в обратном порядке (например)
 cout << "\nResult: V2 = "; // выводим содержимое V2 
 copy(V2.begin(), V2.end(), ostream_iterator<int>(cout, " ")); // выводим содержмое V2
 cout << "\nResult: V2 = "; // а поскольку vector - это тот же массив (только динамический),
 for(int i=0; i<4; i++)   // выводим его как обычный массив
  cout << V2[i] << " ";
 return 0;
}
1
AlexandeRR775
0 / 0 / 0
Регистрация: 23.05.2012
Сообщений: 15
16.11.2012, 15:31  [ТС] #3
Спасибо, но начальный массив вводится с клавиатуры, а другой должен состоять из не повторяющихся элементов начального массива.
0
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
16.11.2012, 15:53 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <algorithm>
#include <iterator>
#include <vector>
 
 
int main() {
   std::vector<int> vector((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
 
   std::vector<int> result(vector);
   std::sort(result.begin(), result.end());
   result.erase(std::unique(result.begin(), result.end()), result.end());
 
   std::copy(result.begin(), result.end(), std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl;
}
http://ideone.com/RU3oU2
1
Illusive
17 / 17 / 0
Регистрация: 11.01.2008
Сообщений: 51
16.11.2012, 16:15 #5
#include <unordered_set>
#include <vector>
#include <iostream>
#include <iterator>

using namespace std;

int main()
{
vector<int> V1; // создаем вектор V1
int value =0;
// заполняем вводом с клавиатуры пока не встретится число больше 10000
while(1) // (можно и другое условие выхода из цикла придумать)
{
cin >> value;
if(value >10000) break;
V1.push_back(value); // загоняем число в вектор
};
cout << "V1 = ";
copy(V1.begin(), V1.end(), ostream_iterator<int>(cout, " ")); // выводим содержмое V1
unordered_set<int> U1(V1.begin(), V1.end()); // здесь исчезают повторяющиеся элементы
cout << "\nU1 = ";
copy(U1.begin(), U1.end(), ostream_iterator<int>(cout, " ")); // выводим содержмое U1
return 0;
}
Правда U1 не вектор, но если требуется, с помощью copy можно переписать содержимое
и в вектор
1
AlexandeRR775
0 / 0 / 0
Регистрация: 23.05.2012
Сообщений: 15
16.11.2012, 22:13  [ТС] #6
Спасибо большое!
0
16.11.2012, 22:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2012, 22:13
Привет! Вот еще темы с ответами:

Из нечётных чисел заданного массива создать новый массив и посчитать количество элементов нового массива - C++
Дано целочисленный одномерный массив А , состоящий из 12 элементов . Создать массив С , состоящий из нечетных чисел массива А , посчитать...

Создать новый массив из отрицательных элементов массива У. - C++
я затрудняюсь в разработке программы... помогите пожалуйста... Дан массив А из 100 элементов. Создать новый массив из отрицательных...

Создать массив из элементов массива, значения которых = 0 - C++
Помогите, что не так с кодом? Думаю, что проблемы с переменно k, т.к. она сначала равна нулю, т.е. получается, что уже состоит из одного...

Создать массив M, содержащий номера нулевых элементов массива D - C++
Дан массив D из N целых случайных чисел; часть из них равна нулю. Создать массив M, содержащий номера нулевых элементов массива D. ...


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

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

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