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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
tolyan1995
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 35
#1

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

21.11.2013, 12:55. Просмотров 1948. Ответов 10
Метки нет (Все метки)

Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их первые вхождения.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2013, 12:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их первые вхождения. (C++):

Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их последние вхождения - C++
#include <iostream> #include <ctime> using namespace std; int main() { setlocale(LC_ALL, "rus"); int n, i; time_t t;...

Дан целочисленный массив размера N. Удалить из массива все одина- ?ковые элементы, оставив их первые вхождения - C++
Всем привет у меня тут проблемка, может кто подскажет ?Дан целочисленный массив размера N. Удалить из массива все одина- ?ковые...

Удалить из массива все одинаковые элементы, оставив их первые вхождения - C++
Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их первые вхождения. Первые вхождения это как?

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

Удалить из массива повторяющиеся элементы, оставив только их первые вхождения - C++
Как мне удалять повторяющийся элемент? #include <iostream> using namespace std; int main () {float a; int n,k=0; cout<<"n=";...

Удалить из массива повторяющиеся элементы, оставив только их первые вхождения - C++
Помогите, зачёт пишу

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ПерС
371 / 287 / 89
Регистрация: 05.11.2013
Сообщений: 820
Записей в блоге: 5
Завершенные тесты: 1
21.11.2013, 13:05 #2
Чем плоха эта ветка?
Уточни условия (например, "использовать дополнительный массив нельзя") или не плоди клоны
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
21.11.2013, 13:15 #3
Как то так наверное

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
#include <iostream>
#include <vector>
#include <cstdlib>
#include <algorithm>
#include <iterator>
 
int main()
{
    srand(time(0));
    size_t SIZE;
    std::vector<int> array;
    
    std::cout << "Input size array: "; std::cin >> SIZE; std::cout << std::endl;
    
    for(int i = 0; i < SIZE; ++i)
        array.push_back(rand() % 10);
    
    std::copy(array.begin(), array.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    
    std::sort(array.begin(),array.end());
 
    
    std::copy(array.begin(), std::unique(array.begin(),array.end()),
                         std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
 
        system("PAUSE");
        return 0;
}
tolyan1995
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 35
21.11.2013, 13:27  [ТС] #4
egor2116, а можно переделать,как для чайников(просто мы еще этого не изучали, что вы использовали). и чтобы ввод массива был с клавиатуры?)))
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
21.11.2013, 13:30 #5
а можно переделать,как для чайников
можно но минут через 10, я на работе и сейчас начинается самое интересное ОБЕД.
tolyan1995
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 35
21.11.2013, 13:42  [ТС] #6
egor2116, буду очень благодарен
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
21.11.2013, 14:29 #7
Наверное как то так
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
38
39
#include <iostream>
 
int main()
{
    size_t SIZE;
    
    std::cout << "Input size array : "; std::cin >> SIZE; std::cout << std::endl;
    
    int source[SIZE];
    int result[SIZE];
    
    for(int i = 0; i < SIZE; ++i)
    {
      std::cout << "Input array element # " << i + 1 << " "; std::cin >> source[i];
    }
 
    int k = 0, count = 0;
    bool  check;
    for(int i = 1; i < SIZE; ++i)
    {
       check = false;
       for(int j = 0; j < SIZE; ++j)
           if(i != j && source[i] == source[j])
                 check = true;
       if(!check)
          {
            result[k] = source[i];
            ++k;
            ++count;
          }
    }
               
    for(int i = 0; i < SIZE - count + 1; ++i)
       std::cout << result[i] << " ";
    std::cout << std::endl;
 
        system("PAUSE");
        return 0;
}
tolyan1995
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 35
21.11.2013, 14:33  [ТС] #8
чё-то ошибки в циклах
egor2116
339 / 370 / 42
Регистрация: 20.01.2013
Сообщений: 1,123
21.11.2013, 14:35 #9
попробуйте заменить
C++
1
 for(int i = 1; i < SIZE; ++i)
на
C++
1
 for(int i = 0; i < SIZE; ++i)
tolyan1995
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 35
21.11.2013, 18:55  [ТС] #10
тоже самое
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,997
21.11.2013, 20:14 #11
Найти уникальные элементы в массиве

Вот в этой теме я делал что - то похожее для двумерного массива, там только кусок этого кода нужен, только времени нету смотреть я убегаю на треню, сорь мб кто поможет
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2013, 20:14
Привет! Вот еще темы с ответами:

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

удалить из массива повторяющиеся элементы, оставив только их первые вхождения. класс-контейнер вектор - C++
Добрый день!!! Не могли бы помочь написать программу на С++ при помощи класса-контейнера вектора. вот код)) Заранее спасибо! #include...

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

Удалить из очереди все повторяющиеся слова, оставив только их первые вхождения - C++
Создать очередь, содержащую слова. Удалить из очереди все повторяющиеся слова, оставив только их первые вхождения. Например, если...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.11.2013, 20:14
Ответ Создать тему
Опции темы

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