6 / 0 / 0
Регистрация: 09.01.2012
Сообщений: 13
1

Подсчет повторяющихся чисел одномерного массива

11.02.2015, 12:45. Показов 2605. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано: одномерный массив в консоли VS. Необходимо подсчитать число повторяющихся чисел и вывести на экран.

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;
 
void main()
{
    setlocale(LC_ALL, "Russian");
    
        int a[10];
 
    for (int i = 0; i < 10; i++)
    {
        cout << "Номер ячейки " << i + 1 << ": ";
        cin >> a[i];
    }
 
    int n = a[0];//для временного хранения 
    int m = 0; //переменная для счетчика
 
    for (int i = 0; i < 10; i++)
    {
        if (n == a[i])
        {
               m++; 
        }
    }
 
    cout << m << endl;
}
Число повторяющихся элементов подсчитывает, но не все.
Пример: {2 2 2 1 3 4 4 5 6 7}

3 повторяющиеся двойки подсчитывает и выводит число 3, но до двух четверок не доходит и число 2 не выводит. Получается счетчик подсчитывает первые попавшиеся повторения, а следующие уже не считает. Чего не хватает?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2015, 12:45
Ответы с готовыми решениями:

Найти минимальный из повторяющихся элементов одномерного массива
Найти минимальный из повторяющихся элементов одномерного массива.

Подсчёт произведени нулевых элементов одномерного массива
Ребят я не могу понять как это?? Можно пожалуйста пример кода? Мне в общем то надо вот в этой...

Подсчёт числа повторяющихся элементов одномерного массива
Вобщем необходимо составить программу на Turbo Pascal 6.0: программу подсчёта числа повторяющихся ...

Подсчет числа повторяющихся простых элементов одномерного целочисленного массива
Помогите, выполнить подсчета числа повторяющихся простых элементов одномерного целочисленного...

5
Dimension
594 / 462 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
11.02.2015, 12:49 2
Цитата Сообщение от drinkyahoo Посмотреть сообщение
int n = a[0];//для временного хранения
вы её не меняете
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
11.02.2015, 12:52 3
Цитата Сообщение от drinkyahoo Посмотреть сообщение
Чего не хватает?
Второго счетчика.
0
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
11.02.2015, 13:07 4
drinkyahoo, так он будет выводить только количество элементов равное значению 1го элемента

Добавлено через 8 минут
drinkyahoo, можно сначала отсортировать массив, и посчитать повторяющиеся
C++
1
2
3
4
if(A[i]==A[i-1])
{
.....
}
0
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,698
11.02.2015, 14:30 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n = a[0];//для временного хранения 
int m = 0; //переменная для счетчика
 
for (int i = 0; i < 10; i++)
{
        if (n == a[i])
        {
               m++; 
        }else
        {
              cout<<n<< " повторяется "<<m<<" раз"<<endl;
              m=0;
              n=a[i];
        }
}
cout<<n<< " повторяется "<<m<<" раз"<<endl;// ля последних символов
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
11.02.2015, 15:01 6
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
//---------------------------------------------------------------------------
#include <map>
#include <iostream>
 
typedef std::map< int, unsigned int > shtek; // Учимся плохо называть переменные
 
int main()
{
const int size_arr = 10;
int arr[] = { 2, 2, 2, 1, 3, 4, 4, 5, 6, 7 };
shtek stek;
shtek::iterator ishtek;
 
for( int index=0; index<size_arr; index++ )
  {
  ishtek = stek.find( arr[index] );
  if( ishtek != stek.end() )
    ishtek->second++;
  else
    stek.insert( std::pair< int, unsigned int >( arr[index], 1 ) );
  }
 
for( ishtek = stek.begin(); ishtek!=stek.end(); ++ishtek )
  std::cout << ishtek->first << ":" << ishtek->second << std::endl;
 
std::cin.ignore();
return 0;
}
//---------------------------------------------------------------------------
0
11.02.2015, 15:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2015, 15:01
Помогаю со студенческими работами здесь

Подсчет количества отрицательных элементов одномерного массива вещественных чисел
вот мой вариант но что-то не работает помогите плиз program zadacha4; uses crt; type ...

Подсчет чисел элементов одномерного массива, превосходящих среднее геометрическое его элементов
1) составьте программу, отыскивающую среди пар элементов одномерного массива Z(N) те, разность...

вычисления суммы повторяющихся элементов одномерного массива
Помогите пожалуйста с программой вычисления суммы повторяющихся элементов одномерного массива, сама...

Вычислить сумму не повторяющихся элементов одномерного массива
Вычислить сумму не повторяющихся элементов массива A.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru