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

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

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

Одинаковые элементы - C++

05.02.2010, 22:03. Просмотров 564. Ответов 5
Метки нет (Все метки)

Задача по C\C++ :

В неупорядоченном массиве есть совпадающие элементы. Из каждой группы одинаковых элементов оставаить только один, удалив остальные и поджав элементы к его началу.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2010, 22:03     Одинаковые элементы
Посмотрите здесь:

нужно разместить элементы таким образом, чтобы одинаковые элементы располагались на определенном расстоянии - C++
Добрый день. У меня возникла проблема с решением задачи. Допустим есть матрица(размер приблизительно 30х20), она заполнена цифрами. нужно...

ОДинаковые элементы в списке - C++
Составить программу которая в списке "0","1","2","-1","-2","3","-3","0","-3","3" проверяет есть ли в списке одинаковые...

Подсчитать одинаковые элементы - C++
Уважаемые опытные программисты! Помогите решить мне одну проблему. Суть её в следующем: Мне нужно посчитать количество одинаковых...

Одинаковые элементы в set - C++
Можно ли каким-то образом добавить в set одинаковые элементы?

Одинаковые элементы массива - C++
Надо определить сколько в массиве одинаковых элементов, по разному пробывала и никак не получается. #include <iostream> #include...

Одинаковые элементы в дереве - C++
Хотел задать вопрос, если при добавлении повторяющегося элемента в список, представляемый в виде дерева, как его разместить правильно? У...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
05.02.2010, 22:05     Одинаковые элементы #2
ну и что теперь будем делать?
PRIKOL
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 64
06.02.2010, 09:43  [ТС]     Одинаковые элементы #3
Извините конечно, но кто нибудь может помочь:В неупорядоченном массиве есть совпадающие элементы. Из каждой группы одинаковых элементов оставаить только один, удалив остальные и поджав элементы к его началу.
А то просто не знаю как: из каждой группы одинаковых элементов оставаить только один, удалив остальные и поджав элементы к его началу.
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
06.02.2010, 11:02     Одинаковые элементы #4
PRIKOL,
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
#include <iostream>
#include <algorithm>
 
int main()
{
    setlocale(LC_ALL, "RUSSIAN");
 
    int arr[] = {7,6,3,4,5,7,5,6,9,9};
    const size_t N = sizeof(arr) / sizeof(*arr);
 
    std::ostream_iterator <int> _ITER(std::cout," ");
 
    std::cout << "Исходный массив :" << std::endl;
    std::copy(arr, arr+N, _ITER);
 
    std::cout << std::endl;
    std::sort(arr, arr+N);
 
    std::cout << "отсортированный массив :" << std::endl;
    std::copy(arr, arr+N, _ITER);
 
    std::cout << std::endl << "без повторяющихся :" << std::endl;
    std::copy(arr, std::unique(arr, arr+N), _ITER);
 
    return 0;
}
PRIKOL
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 64
08.02.2010, 15:36  [ТС]     Одинаковые элементы #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
#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
int main()
{
int i,j,n,c;
cout<<"Vvedite kol-vo elementov massiva";
cin>>n;
int *a=new int[n];
cout<<"Vvedite elementi massiva";
for(i=0;i<n;i++)
cin>>a[i];
for(i=0;i<n;i++)
cout<<setw(4)<<a[i];
c=0;
for(i=0;i<n;i++)
{for(j=i+1;j<n;j++)
{if(a[j]==a[i])
{a[j]=a[n-1];
n--;}}}
for(i=0;i<n;i++)
{for(j=i+1;j<n;j++)
{if(a[j]==a[i])
{c=j;
while(c<n)
{a[c]=a[c+1];
c++;}
n=n--;}}}
cout<<endl;
for(i=0;i<n;i++)
cout<<setw(4)<<a[i];
getch();
return(0);
}
Только вот получается такое:
Название: Снимок.PNG
Просмотров: 46

Размер: 3.3 Кб
А должно быть: 3 4 2 7
Что нужно исправить в коде?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2010, 22:49     Одинаковые элементы
Еще ссылки по теме:

в массиве одинаковые элементы - C++
Проверка наличия в массиве одинаковых элементов

Одинаковые элементы в массиве. - C++
Дан динамический массив, размерность которого вводится с клавиатуры. Нужно найти одинаковые элементы и вывести их следующим образом: ...

одномерный массив. одинаковые элементы. - C++
дан одномерный массив А состоящий из N элементов. Выяснить сколько значений элементов в массиве А встречается несколько раз? помогите с...

Не удаляются одинаковые элементы списка - C++
Добрый вечер. Моя задача основана на связных списках. Не работает только функция удаления одинаковых элементов списка (void...

Найти одинаковые элементы в массиве - C++
Массив A содержит только два одинаковых числа. Найти эти числа и указать их индексы #include &lt;stdio.h&gt; int A = { { 0, 1, 2, 3, 4,...

Удалить одинаковые элементы массива - C++
Создать массив из 20 элементов, из массива удалить одинаковые элементы массива и вывести на экран


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

Или воспользуйтесь поиском по форуму:
PRIKOL
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 64
08.02.2010, 22:49  [ТС]     Одинаковые элементы #6
Подскажите пожалуйста, что в моём коде нужно исправить(чтобы программа после удаления совпадающих элементов массива(оставляя один элемент) правильно поджимала массив к его началу, а то при тесте программа поджимая меняет порядок цифр(показано на скрине выше) в массиве)? Ответьте(подскажите), заранее ОГРОМНОЕ СПС !!!
Yandex
Объявления
08.02.2010, 22:49     Одинаковые элементы
Ответ Создать тему
Опции темы

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