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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 89, средняя оценка - 4.75
vitaliyden
0 / 0 / 0
Регистрация: 15.06.2010
Сообщений: 16
#1

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

14.10.2010, 17:21. Просмотров 15465. Ответов 20
Метки нет (Все метки)

Уважаемые кодеры, прошу вашей помощи.

Есть одномерный массив, который уже задан, например int a[7]={1,2,3,2,6,2,7}
Нужно посчитать количество одинаковых элементов массива а.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2010, 17:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти количество одинаковых элементов массива (C++):

Найти количество одинаковых элементов массива - C++
Помогите в решение я работаю на борланде Си Задание: Найти количество одинаковых элементов массива А(N) (N=21, элементы от -4 до 4) ...

Найти количество одинаковых элементов массива - C++
Найти количество одинаковых элементов массива и дописать это количество в этот же массив, помогите пж. Мой код, там таблица в которой...

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

количество одинаковых элементов массива - C++
Помогите пожалуйста написать программу, которая бы считывала 4 числа из файла, считала количество одинаковых элементов массива и записывала...

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

Найти количество одинаковых элементов в одномерном массиве - C++
Здравствуйте, как определить количество одинаковых элементов в строке, если предположем массив из 5 элементов? вот мне нужно чтобы в строке...

20
kompozitor12345
4 / 4 / 1
Регистрация: 12.12.2010
Сообщений: 17
28.10.2013, 07:15 #16
C++ (Qt)
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
40
41
42
43
44
45
46
#include <QCoreApplication>
#include <iostream>
#include <cstring>
 
int main(int argc, char *argv[])
{
 
int buf=0;
 
int t=0;
 
    using namespace std;
    setlocale(LC_ALL,".1251");
    QCoreApplication a(argc, argv);
 
    int mas[10] = {1,1,2,3,4,5,3,1,3,6};
 
    for(int i=0;i<10;i++)
    {
        for(int j=0;j<10;j++)
        {
        if(mas[i]>mas[j])
        {
            buf=mas[i];
            mas[i]=mas[j];
            mas[j]=buf;
        }
        }
    }
    for(int i=0;i<10;i++){
 
            if(mas[i] == mas[i+1])
            {
            if(mas[i]!= mas[i-1])
                t=0;
                t++;
                if(t==1)
                    cout<<mas[i]<<" "<<mas[i+1]<<" ";
                else
                    cout<<mas[i]<<" ";
 
            }
    }
 
    return a.exec();
}
0
BigBuch
0 / 0 / 0
Регистрация: 27.02.2015
Сообщений: 1
27.02.2015, 10:26 #17
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
#include <iostream>
using namespace std;
int main()
{
    setlocale(0, "");
    int a[5] = { 0, 0, 1, 0, 6 };
    int i;
    int k;
    int s = 0;
    for (i = 0; i < 3; i++)
    {
        for (k = 1; k < 4; k++)
        {
            if ((a[i] == a[k]) && (k!=i))
            {
                s++;
                cout << "элемент:" << i <<endl;
                cout << "и элемент:" << k << endl;
            }
        }
    }
    
        
    cout << "повторяются " << s <<" раз" << endl;
    
    system ("pause");
    return 0;
}
0
Tim1444
0 / 0 / 0
Регистрация: 05.10.2015
Сообщений: 11
21.10.2015, 17:06 #18
Unforgiven_00,
cout << a[i] << '-' << count(a, a+8, a[i]) << endl;
пожалуйста, если вам не трудно объясните значение это строки
0
Dimension
Dimension
570 / 439 / 135
Регистрация: 08.04.2014
Сообщений: 1,709
Завершенные тесты: 1
21.10.2015, 17:10 #19
Цитата Сообщение от Tim1444 Посмотреть сообщение
пожалуйста,
выводит элемент ,и сколько раз он встречается в массиве
0
Apollo1222
1 / 1 / 0
Регистрация: 10.10.2016
Сообщений: 124
19.10.2016, 21:23 #20
easybudda, подскажите почему идентификаторы malloc, free, exit не определены? И можно ли элементы массива вводить с клавиатуры?

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h> 
 
 
typedef struct VALCNT {
    int val;
    int cnt;
    struct VALCNT * next;
} valcnt_t;
 
valcnt_t * new_val_counter(int value) {
    valcnt_t * vc;
    if ((vc = (valcnt_t*) malloc(sizeof(valcnt_t))) == NULL)
        return NULL;
    vc->val = value;
    vc->cnt = 1;
    vc->next = NULL;
    return vc;
}
 
typedef struct COUNTERS {
    valcnt_t * first;
    valcnt_t * last;
} counters_t;
 
counters_t * new_counters(void) {
    counters_t * cs;
    if ((cs = (counters_t*)malloc(sizeof(counters_t))) == NULL)
        return NULL;
    cs->first = NULL;
    cs->last = NULL;
    return cs;
}
 
void delete_counters(counters_t * cs) {
    while (cs->first) {
        cs->last = cs->first->next;
        free(cs->first);
        cs->first = cs->last;
    }
    free(cs);
}
 
int insert(counters_t * cs, int value) {
    valcnt_t * found;
 
    if (!cs->first) {
        if ((cs->first = new_val_counter(value)) == NULL)
            return -1;
        cs->last = cs->first;
        return 0;
    }
    for (found = cs->first; found; found = found->next) {
        if (found->val == value) {
            found->cnt += 1;
            return 0;
        }
    }
    if ((cs->last->next = new_val_counter(value)) == NULL)
        return -1;
    cs->last = cs->last->next;
    return 0;
}
 
void print_counters(const counters_t * cs) {
    const valcnt_t * cur;
    printf("Value\tCount\n");
    for (cur = cs->first; cur; cur = cur->next)
        printf("%d\t%d\n", cur->val, cur->cnt);
}
 
#define SIZE 10
 
int main(void) {
    int arr[SIZE] = { 2, 3, 5, 5, 7, 8, 2, 5, 8, 3 };
    int i;
    counters_t * cs;
    if ((cs = new_counters()) == NULL) {
        fprintf(stderr, "Error creating counters!\n");
        exit(1);
    }
    printf("Array:\n");
    for (i = 0; i < SIZE; ++i) {
        printf("%d ", arr[i]);
        if (insert(cs, arr[i])) {
            fprintf(stderr, "Error inserting value!\n");
            delete_counters(cs);
            exit(1);
        }
    }
    printf("\n");
    print_counters(cs);
    delete_counters(cs);
 
    exit(0);
}
0
VAN0
58 / 58 / 33
Регистрация: 05.05.2013
Сообщений: 150
Завершенные тесты: 1
19.10.2016, 22:03 #21
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int main()
{
   int a[7]={1,2,3,2,6,2,7};
   int repeat[10] = {0};
   for (int i = 0; i < 7; i++) repeat[a[i]] +=1;
   for (int i = 0; i < 10; i++)  
   cout << i << " - " << repeat[i] << " repeat\n";
   cin.get();
   return 0;       
}
0
19.10.2016, 22:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.10.2016, 22:03
Привет! Вот еще темы с ответами:

Найти количество одинаковых элементов в каждом массиве - C++
Дан массивы X(x1,x2,…,x24) и Y(y1,y2,…,y24). Нужно найти сколько одинковых элементов в каждом массиве.

Определить максимальное количество одинаковых элементов массива, использовать функцию и указатели - C++
Помогите, пожалуйста, ОЧЕНЬ срочно нужно! Дано целочисленный массив размера N. Определить максимальное количество его одинаковых...

Найти количество одинаковых элементов подряд в одномерном массиве - C++
Здравствуйте!!!Помогите, пожалуйста, написать программу:Подсчитать количество одинаковых элементов одномерного массива, которые расположены...

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


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

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

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