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

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

Войти
Регистрация
Восстановить пароль
 
 
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
#1

В одномерном массиве найти элементы встречающиеся 2 раза и вывести их на экран - C++

15.06.2013, 21:38. Просмотров 792. Ответов 15
Метки нет (Все метки)

в одномерном массиве найти элементы встречающиеся 2 раза и вывести их на экран
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.06.2013, 21:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В одномерном массиве найти элементы встречающиеся 2 раза и вывести их на экран (C++):

Элементы массива, встречающиеся в массиве 2 раза вывести единожды - C++
как тут написать чтоб повторяющиеся элементы по одной цифре выводило,а не по две: cout<<b; cout<<"Элементы встречающиеся в массиве В...

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

Вывести на экран все слова, встречающиеся более 1 раза - C++
Помогите пожалуйста, запуталась в циклах!!! (( Сама задача такова:Дана строка в ней не более 30 слов, в каждом слове не более 8 букв. Слова...

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

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

Найти все числа встречающиеся в массиве P строго два раза (не упорядочивая самого массива). - C++
Помогите решить задачу по С++ Найти все числа встречающиеся в массиве P строго два раза (не упорядочивая самого массива).

15
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.06.2013, 21:41 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 10
 
void Init(int *a, int *end)
{
   if (a < end)
   {
      *a = rand() % 10 - 5;
      Init(a + 1, end);
   }
}
 
void Print(int *a, int n)
{
   int i, j;
   for(i = 0; i < n; ++i)
      printf("%4d", a[i]);
   putchar('\n');
}
 
int Count(int *a, int *end, int x)
{
   return a < end ? (*a == x) + Count(a + 1, end, x) : 0;
}
 
int Search(int *a, int *end, int x)
{
   return a < end ? (*a == x) || Search(a + 1, end, x) : 0;
}
 
int main()
{
   int i, a[N];
   srand(time(NULL));
   Init(a, a + N);
   Print(a, N);
   for(i = 0; i < N; ++i)
      if (Count(a, a + N, a[i]) == 2 && !Search(a, a + i, a[i]))
          printf("%d\n", a[i]);
   return 0;
}
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 21:43  [ТС] #3
С?!а не С++?
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.06.2013, 21:45 #4
Цитата Сообщение от Марина1312 Посмотреть сообщение
С?!а не С++?
В этой задаче разницы нет. замените printf на cout, вот вам и C++
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 21:47  [ТС] #5
Цитата Сообщение от Thinker Посмотреть сообщение
В этой задаче разницы нет. замените printf на cout, вот вам и C++
а можете сделать?а то голова уже не соображает(((
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.06.2013, 21:48 #6
Цитата Сообщение от Марина1312 Посмотреть сообщение
а можете сделать?а то голова уже не соображает(((
берите как есть, а топотом с компилятором проблемы начнутся, а тут все работает как часы.
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 21:50  [ТС] #7
Цитата Сообщение от Thinker Посмотреть сообщение
берите как есть, а топотом с компилятором проблемы начнутся, а тут все работает как часы.
просто мне эту часть нужно вставить в другую задачу,а так будет еще хуже
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.06.2013, 21:51 #8
Цитата Сообщение от Марина1312 Посмотреть сообщение
просто мне эту часть нужно вставить в другую задачу,а так будет еще хуже
проблемы будут, если вы неправильно вставите. а с подключенными библиотеками (в таком виде) все будет работать
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 21:55  [ТС] #9
Цитата Сообщение от Thinker Посмотреть сообщение
проблемы будут, если вы неправильно вставите. а с подключенными библиотеками (в таком виде) все будет работать
блин,если вы такой мастер давно бы уж переделали наверно,я С вообще не знаю,ток С++ и так очень сильно запутаюсь
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
15.06.2013, 21:55 #10
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
#include<iostream>
#include<stdlib>
#include<ctime>
#define N 10
 
void Init(int *a, int *end)
{
   if (a < end)
   {
      *a = rand() % 10 - 5;
      Init(a + 1, end);
   }
}
 
void Print(int *a, int n)
{
   int i, j;
   for(i = 0; i < n; ++i)
      std::cout << a[i] << " ";
   std::cout << std::endl;
}
 
int Count(int *a, int *end, int x)
{
   return a < end ? (*a == x) + Count(a + 1, end, x) : 0;
}
 
int Search(int *a, int *end, int x)
{
   return a < end ? (*a == x) || Search(a + 1, end, x) : 0;
}
 
int main()
{
   int i, a[N];
   srand(time(NULL));
   Init(a, a + N);
   Print(a, N);
   for(i = 0; i < N; ++i)
      if (Count(a, a + N, a[i]) == 2 && !Search(a, a + i, a[i]))
          std::cout << a[i] << std::endl;
   return 0;
}
1
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 22:40  [ТС] #11
C++
1
2
3
4
5
6
7
8
9
10
for (int i = 0; i < 10; i++) 
    {
        for (int j = 1; j < 10; j++) 
        { 
            if(b[i] == b[j]) 
                count++; }
      if(count == 2) 
          cout<<"В массиве В 2 раза встречаются: "<<b[i]<<"\n";}
        return 0;
}
вот а если так,ток надо теперь сделать так чтоб выводило если несколько элементов повторяющихся 2 раза как это можно сделать?
0
Bugrimov
4 / 4 / 0
Регистрация: 18.11.2012
Сообщений: 118
15.06.2013, 23:15 #12
А если элементов в массиве 3 или 4, 5...... Нужно именно отсеить те которых только двое...
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
15.06.2013, 23:25  [ТС] #13
Цитата Сообщение от Bugrimov Посмотреть сообщение
В этом и проблема... А если элементов в массиве 3 или 4, 5...... Нужно именно отсеить те которых только двое...
ну я имею в виду если в массиве несколько элементов повторяющихся только 2 раза, то выводит только один из них
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
16.06.2013, 08:02 #14
Марина1312, Bugrimov, вам дали работающую программу, решающую ваши задачи, чего еще надо...
0
Марина1312
0 / 0 / 0
Регистрация: 21.04.2013
Сообщений: 70
17.06.2013, 11:20  [ТС] #15
Цитата Сообщение от Thinker Посмотреть сообщение
Марина1312, Bugrimov, вам дали работающую программу, решающую ваши задачи, чего еще надо...
не работает ваша программа!
ошибку выдает!
0
17.06.2013, 11:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.06.2013, 11:20
Привет! Вот еще темы с ответами:

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

Найти максимальное из чисел встречающихся в данном одномерном массиве более одного раза - C++
Помогите пожалуйста задачка вроде простенькая : найти максимальное из чисел встречающихся в данном одномерном массиве более одного раза

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

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


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

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

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