|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.10.2012, 19:04 | #1 |
Форумчанин
Регистрация: 11.10.2012
Сообщений: 409
|
Алгоритм(на Си)
Добрый вечер. Помогите составить блок схему алгоритма "Подсчет количества чисел, которые встречаются в массиве ровно три раза".
И пожалуйста объясните подробно что да как! Если что я на первом курсе. Поэтому думаю задание элементарное, но у меня с ним проблемы(( Код не нужен, только блок схема. Заранее очень благодарен! |
11.10.2012, 19:24 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Самым простым методом видится:
Любая сортировка массива (пузырьком или встроенная qsort) Проход по массиву с подсчетом повторений Например: 4 7 2 5 2 9 6 5 8 После сортировки 2 2 4 5 5 6 7 8 9
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
11.10.2012, 19:28 | #3 |
Форумчанин
Регистрация: 11.10.2012
Сообщений: 409
|
Массив должен быть общего вида. Если было бы задано кол-во элементов проблем бы не было.
|
11.10.2012, 19:41 | #4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Не понял этого замечания. В массиве будет определенное количество элементов. Оно может быть разным, но все же будет известным. Грубо говоря, какое-то число n.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
11.10.2012, 20:26 | #5 |
Форумчанин
Регистрация: 11.10.2012
Сообщений: 409
|
Все понятно... Допустим я сортирую массив ( методом пузырька ) А каким образом должен выглядеть цикл считающий кол-во повторений?
|
11.10.2012, 21:16 | #6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Сначала count = 1 и elem = a[0] (т.е. запоминаем первый элемент)
Затем идем циклом от 1 до n-1 элемента (при n элементах в массиве) Если текущий элемент равен elem, то увеличиваем счетчик, если не равен, то: 1) проверяем, равен ли count трем, если равен, то печатаем elem 2) присваиваем elem текущий элемент и ставим count = 1 После цикла еще раз проверяем count на равенство 3, и если равен, печатаем elem
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разветвляющийся алгоритм,циклический алгоритм и Многомерные массивы (Pascal) | TrapperPTZ | Помощь студентам | 1 | 26.01.2012 08:58 |
Разработайте алгоритм методом пошаговой детализации и программу, реализующую этот алгоритм. | iamhated | Помощь студентам | 1 | 15.01.2012 16:24 |
Разработайте алгоритм методом пошаговой детализации и программу, реализующую этот алгоритм | iamhated | Помощь студентам | 1 | 14.01.2012 16:22 |
Алгоритм TMDS (Алгоритм передачи данных интерфейса DVI) | Pro4RE | Помощь студентам | 2 | 24.04.2011 21:55 |
Волновой алгоритм (алгоритм Ли) | MrRockchip | Общие вопросы C/C++ | 4 | 10.05.2010 13:26 |