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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
saserlend
11 / 11 / 1
Регистрация: 25.11.2011
Сообщений: 145
#1

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

09.12.2011, 21:30. Просмотров 1582. Ответов 2
Метки нет (Все метки)

Задан массив из k символов. Определить количество различных эле-ментов в массиве.
Увы код который мне с самого начала пришел в голову, считает все комбинации разл. элементов. Подайте идею какую =)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
int a,b=0,i,j,A[10],B[10];
void main()
{
    printf("Kolichestvo elementov massiva: ");
    scanf("%d", &a);
        printf("Vvedite elementi massiva ");
        for(i=0;i<a;i++)
            scanf("%d", &A[i]);
            for(i=0;i<a;i++)
                {B[j++]=A[i];}
    {
        for(i=0;i<a;i++)
        {   for(j=0;j<a;j++)
            {
                if(A[i]!=B[j]) b++;
            }
 
    }
 
printf("Kolichestvo razlichnih elementov = %d", b);
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2011, 21:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить количество различных эле-ментов в массиве (C++):

В одномерном массиве, состоящем из n элементов, вычислить сумму эле- ментов после максимального элемента - C++
Оформить её в виде шаблона функции. Все исходные данные для функции должны передаваться в виде параметров. Использование глобальных...

Найти произведение номеров максимального и минимального эле-ментов массива - C++
Создать функцию, параметром которой является одномерный массив и его размерность. Тело функции реализовать двумя способами: через обращение...

В матрице размером N*M упорядочить строки по возрастанию их первых эле-ментов - C++
Вводится массив, почему-то не работает сортировка #include &lt;iostream.h&gt; #include &lt;stdlib.h&gt; #include &lt;conio.h&gt; #include...

Определить количество различных элементов в массиве - C++
Задан массив действительных чисел. Определить количество различных элементов в массиве.

Cоставить программу, которая содержит рекурсивную функ-цию Combin2(N, K) целого типа, находящую C(N, K) – число сочетаний из N эле-ментов по K - C++
помогите составить программу, которая содержит рекурсивную функ-цию Combin2(N, K) целого типа, находящую C(N, K) – число сочетаний из N...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Vandris
63 / 63 / 13
Регистрация: 19.01.2011
Сообщений: 94
09.12.2011, 22:15 #2
Цитата Сообщение от saserlend Посмотреть сообщение
Определить количество различных эле-ментов в массиве.
Цитата Сообщение от saserlend Посмотреть сообщение
Подайте идею какую =)
ну собственно как вариант: завести переменную - счетчик, сортируем массив и после сортировки пробегаем по массиву и сравниваем соседние элементы, если не равны, то увеличиваем счетчик на 1

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 <algorithm>
 
int main()
{
    setlocale(LC_CTYPE, ".1251");
    int *array;
    size_t size;
 
    std::cout << "Введите кол-во элементов в массиве: ";
    std::cin >> size;
 
    array = new int [size];
 
    for (int i = 0; i < size; i++)
    {
        std::cout << "Введите " << i+1 << "й элемент: ";
        std::cin >> array[i];
    }
 
    std::sort(array, array+size);
 
    int count_of_differents = 1;
 
    for (int i = 1; i < size; i++)
        if (array[i] != array[i-1])
            count_of_differents++;
 
    std::cout << "Количество различных элементов: " << count_of_differents;
}
0
Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
09.12.2011, 23:29 #3
Так как текст программы приведен почти полностью, то на всякий случай допишу, что выделенную память нужно освобождать.
C++
1
2
3
    delete[] array;
 
    return 0;
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2011, 23:29
Привет! Вот еще темы с ответами:

Найти количество различных элементов в массиве - C++
Найти количество различных элементов в массиве.

Сосчитайте количество различных чисел в массиве - C++
Упражнения Двумерные массивы Длина массива задается константой. (Если вы уже слегка продвинутый, то используйте массивы, количество...

Посчитать количество различных значений в массиве - C++
Дан одномерный массив A. Посчитать количество различных значений в этом массиве.

Найти количество различных элементов в массиве. - C++
Найти количество различных элементов в массиве.


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

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

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