Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21

Даны натуральное n и целые a1, a2, ., an. Найти сколько чисел входят в последовательность более чем по 1 разу

09.10.2012, 11:47. Показов 3181. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна помощь в написании задачи с массив. Условие:
Даны натуральное n и целые a1, a2, ..., an. Внутри последовательности могут быть повторяющихся членов. Найти сколько чисел входят в последовательность более чем по 1 разу.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.10.2012, 11:47
Ответы с готовыми решениями:

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

Даны целые числа x1, ., xn. Определить количество чисел, входящих в последовательность по одному разу
Помогите,вроде идея есть,но не могу написать правильно Даны целые числа x1, ..., xn. Определить количество чисел, входящих в...

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

10
2393 / 1913 / 763
Регистрация: 27.07.2012
Сообщений: 5,558
09.10.2012, 12:15
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
#include <iostream>
#include <algorithm>
 
const int N = 25;
 
int getRand(void) { return rand() % 10; }
 
int main(void)
{
    setlocale(LC_ALL,"Russian");
 
    int Array[N];
    std::generate(Array, Array + N, getRand);
    std::cout << "Исходная последовательность: " << '\n';
    std::copy(Array, Array + N, std::ostream_iterator<int>(std::cout, " "));
 
    std::sort(Array, Array + N);
 
    int currentSlip = 0;
    int count_Of_Elements_That_Meets_More_Than_Once = 0;
    while (currentSlip < N)
    {
        int count = std::count(Array + currentSlip, Array + N, Array[currentSlip]);
        if (count > 1)
            ++count_Of_Elements_That_Meets_More_Than_Once;
        currentSlip += count;
    }
    std::cout << "\n\n" << "Число элементов, встречающихся в последовательности более 1го раза: " <<
        count_Of_Elements_That_Meets_More_Than_Once << "\n\n";
    system("pause");
}
1
 Аватар для I.M.
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
09.10.2012, 12:55
C++
1
2
3
4
5
6
7
8
9
    std::array<int, N> Array;
    std::generate(Array.begin(), Array.end(), [](){return rand()%10;});
    std::cout << "Исходная последовательность: " << '\n';
    std::copy(Array.begin(), Array.end(), std::ostream_iterator<int>(std::cout, " "));
 
    std::sort(Array.begin(), Array.end());
    auto it = std::unique(Array.begin(), Array.end());
    std::set<int> Set(it, Array.end()); 
    std::cout << std::endl << "Result : " << Set.size() << std::endl;
1
2393 / 1913 / 763
Регистрация: 27.07.2012
Сообщений: 5,558
09.10.2012, 13:15
C++
1
2
3
4
    std::array<int, N> Array;
    /* ... */, [](){return rand()%10;});
/* ... */
    auto it = /*...*/
Вот всех этих штук нету в старом стандарте. А так конечно, код понятнее становится.
1
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21
09.10.2012, 15:59  [ТС]
А можно сделать так, чтобы последовательность вручную задавалась?
0
2393 / 1913 / 763
Регистрация: 27.07.2012
Сообщений: 5,558
09.10.2012, 16:05
Добавьте
C++
1
2
3
4
5
6
7
int handSet(void)
{
    int a;
    std::cout << "Введите число: ";
    std::cin >> a;
    return a;
}
и замените тут:
C++
1
    std::generate(Array, Array + N, handSet);
1
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21
10.10.2012, 15:09  [ТС]
Программу запустил, работает, но нужно немного не так
Надо, чтобы было 2 функции, одна задает массив, а другая решает задачу. Может кто знает как написать эти функции?
0
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21
15.10.2012, 18:17  [ТС]
Надо, чтобы было 2 функции, одна задает массив, а другая решает задачу. Может кто знает как написать эти функции?
0
 Аватар для I.M.
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
15.10.2012, 22:43
SoSPB, вы в принципе знаете, что такое функция и как ее реализовать в С++? Если да, то в первую функцию выносите строчку
C++
1
std::generate(Array, Array + N, handSet);
а во вторую
C++
1
2
3
std::sort(Array.begin(), Array.end());
auto it = std::unique(Array.begin(), Array.end());
std::set<int> Set(it, Array.end());
1
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21
16.10.2012, 18:15  [ТС]
I.M., Вот и проблема в том, что незнаю, как вынести так, чтобы работало. Пытался, но не получается(
0
0 / 0 / 0
Регистрация: 29.09.2012
Сообщений: 21
23.10.2012, 17:23  [ТС]
Помогите, пжалуйста, разделить на три функции. Надо, чтобы первая была функция ввода массива, вторая- само тело программы, и третья- вывод...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.10.2012, 17:23
Помогаю со студенческими работами здесь

Сколько чисел и какие входят в последовательность более чем по одному разу
вот задачка: Дана последовательность чисел а1, а2, …, аn. Выяснить, сколько чисел и какие входят в последовательность более чем по...

Выяснить, сколько чисел и какие входят в последовательность более чем по одному разу.
8. Дана последовательность чисел а1, а2, …, аn. Выяснить, сколько чисел и какие входят в последовательность более чем по одному разу. ...

Выяснить, сколько чисел и какие входят в последовательность более чем по одному разу
8. Дана последовательность чисел а1, а2, …, аn. Выяснить, сколько чисел и какие входят в последовательность более чем по одному разу. ...

Определить, сколько чисел входит в последовательность более чем по одному разу
Даны целые числа А1,А2,...,Ап (в этой последовательности могут быть члены, которые повторяются). Определить, сколько чисел входит в...

Выяснить, сколько чисел входит в список более, чем по одному разу
есть такая программа она рассчитывает сколько чисел входит 1 раз. domains n=integer* predicates po_1_razy(integer,integer,n,n) ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru