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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.85
Dimonsss
0 / 0 / 0
Регистрация: 22.10.2009
Сообщений: 8
#1

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

26.10.2009, 19:10. Просмотров 4752. Ответов 3
Метки нет (Все метки)

Здравствуйте, как определить количество одинаковых элементов в строке, если предположем массив из 5 элементов? вот мне нужно чтобы в строке 9 9 91 1 выдало 2, т.е. два одинаковых элемента...
Я делал вот так, что то не правильно считает....Подскажите пожалуйста.
C++
1
2
3
4
5
6
7
8
9
10
const int n=5;
S=0;
 
for(i=0;i<n;i++)
 
     for(j=i;j<n;j++)
 
          if(a[i]=a[j+1])
 
          S+=1;
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2009, 19:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти количество одинаковых элементов в одномерном массиве (C++):

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

Количество одинаковых элементов в одномерном массиве (строке матрицы) - C++
Надо найти кол-во одинаковых элементов в строке матрицы или одномерном массиве , без разницы, самое главное алгоритм и принцип , ОТВЕТ: 6]....

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

В одномерном массиве найти количество различных элементов - C++
Условие: в одномерном массиве найти количество различных элементов. компилятор ругается #include&lt;iostream&gt; #include&lt;stdlib.h&gt; ...

Найти количество различных элементов в одномерном массиве - C++
2 л.р. Найти количество различных элементов в одномерном массиве Добавлено через 21 минуту Считать массив динамическим

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
CyBOSSeR
Эксперт C++
2303 / 1673 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
26.10.2009, 19:14 #2
C++
1
2
3
4
5
6
7
const int n = 5;
S = 0;
 
for(i = 0; i < n - 1; i++)  // идем с 0 по n - 2 элемент
     for(j = i + 1; j < n; j++) // идем с i + 1 по n - 1 элемент
          if(a[i] == a[j]) // если равны i и j элементы увеличиваем счетчик
             S++;
1
Dimonsss
0 / 0 / 0
Регистрация: 22.10.2009
Сообщений: 8
26.10.2009, 19:51  [ТС] #3
Спасибо то что нужно получается, только ещё вопрос как теперь сравнить полученные числа, просто если этих строчек не одна а несколько, и отсортировать эти строчки по полученным значениям?
Например если в первой строчке 2 одинаковых элемента, а во второй 1 то поменять их местами, так чтобы по возрастанию они были.... Я думаю тут как то с Двумерным массивом надо что то делать но как?
0
Rififi
2359 / 1054 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
26.10.2009, 22:08 #4
Здравствуйте, как определить количество одинаковых элементов в строке, если предположем массив из 5 элементов?

я думаю, если ты сдашь преподу вот
это
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <algorithm>
#include <functional>
#include <vector>
#include <set>
#include <iostream>
#include <iterator>
 
template <typename T,typename _Pr,typename _Ax,template <typename,typename,typename>class U>
struct same_t:public std::binary_function<T,T,bool>{typedef U<T,_Pr,_Ax>V;
same_t(const V&v):v_(v){}bool operator()(const T&v1,const T&v2)const{return
v_.count(v1)<v_.count(v2);}const V&v_;};template<typename T,typename _Pr, 
typename _Ax,template<typename,typename,typename>class U>same_t<T,_Pr,_Ax,U>
same(const U<T,_Pr,_Ax>&u){return same_t<T,_Pr,_Ax,U>(u);}template<typename It>
typename std::allocator<It>::size_type max_same(It begin,It end){std::multiset<typename
std::iterator_traits<It>::value_type>x;return x.count((std::copy(begin,end,
std::inserter(x,x.begin())),*std::max_element(x.begin(),x.end(),same(x))));}int main()
{setlocale(LC_ALL, "");const int v[]={9,9,1,0,3,4,1,1,3,4};const size_t N = sizeof(v)/
sizeof(v[0]);std::cout<<"Максимальное количество одинаковых элементов: "
<< max_same(v,v+N)<<std::endl;return 0;}
, то он к тебе вообще больше никогда не подойдёт.



Проверка: http://codepad.org/DGqwACN6
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2009, 22:08
Привет! Вот еще темы с ответами:

В одномерном массиве размерностью N найти количество отрицательных элементов - C++
Дано одномірний масив розмірністю N, знайти кількість від’ємних елементів масиву Язык форума - Русский. Перевожу В одномерном массиве...

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

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

Функция поиска в одномерном массиве: найти количество положительных и отрицательных элементов - C++
как в С++ пишется функция поиск? что то типо этого: poisk(A, n); void poisk(int** a, int n)


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

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

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