|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.03.2020, 16:29 | #1 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 164
|
Язык C работа с массивами. задача.
Доброго времени суток!
Дана след. задача: В танцевальной группе 60 танцоров в возрасте от 17 - 50. Входные данные: возраст каждого из танцоров (заполнение массива) массив dancers_age[60] Выходные данные:1) Возраст в котором меньше всего танцоров 2) Возраст самого старого танцора 3) кол-во старых танцоров (старый танцор -это танцор, возраст которого выше на 3 года чем средний возраст в группе. Проблема только с 1 вопросом.-> 1) найти возраст в котором меньше всего танцоров. Логика проста. Взял массив счетчиков, размером в 51, чтобы считать каждый возраст по индексу. т.е дано что возраст танцора в рамках от 17-50, соответственно буду поднимать счетчик на совпадение. например массив count_age[dancers_age[i]]++; Использую CodeBlocks. Код:
Не пойму почему заполняется count_age с первых индексов.. рабочие счетчики должны быть с 17-50 (счетчик для каждого возраста) Помогите пожалуйста разобраться. Последний раз редактировалось JOFRIF; 16.03.2020 в 02:08. |
16.03.2020, 12:19 | #2 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 965
|
один из вариантов
Код:
Последний раз редактировалось Алексей1153; 16.03.2020 в 12:21. |
16.03.2020, 12:59 | #3 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 164
|
Спасибо Алексей1153 за ответ!
Проблема в принципе только с этим моментом: Код:
Код:
для массива count_age[dancers_age[5]] т.е count_age[22]++. Должно получиться что count_age[0]...по count_age[16] пустые.. Объяснил как мог... p.s если можно пожалуйста использовать язык C (вместо с++) так мне легче понять. |
16.03.2020, 14:00 | #4 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
Код:
from dark to light)
|
16.03.2020, 14:58 | #5 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 164
|
Спасибо Алексей_2012!
Уверен что есть несколько вариантов для решения этой задачи. Я пытался использовать массив счетчиков. Повторюсь не понятен лишь один момент насчет массива счетчиков. когда включаю отладчик, то видно что массив счетчиков заполняется неверно. Подчеркнуты желтым индексы которые вообще не понятно как заполнились... count_age[0]...count_age[16] //счетчики должны быть пустыми (а по факту они заполняются) входные данные, т.е возраст ограничен с 17-50. соответственно только эти счетчики могут подниматься с count_age[17] по count_age[50]. Постарайтесь пожалуйста понять мой вопрос.. |
17.03.2020, 12:02 | #6 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 965
|
JOFRIF, я запустил твой код, ввёл значения 18,18,22,35,45,18 . Никаких лишних индексов не заполнилось (см. скрин)
Попробуй полный ребилд сделать |
17.03.2020, 12:06 | #7 |
фрилансер
Форумчанин
Регистрация: 11.10.2019
Сообщений: 965
|
хех, ну так понятно, где собака порылась. Смотри у себя на скрине - обрати внимание на надпись "repeats 18 times"
в итоге индекс 18 показан как индекс 1 . Это глюк твоей IDE |
17.03.2020, 17:44 | #8 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 164
|
Спасибо Алексей1153!
И в правду похоже на глюк CodeBlocks...у меня по прежнему этот глюк.. Главное нашли где собака зарыта)) *p.s на какой IDE ты тестил мой код? Просто не хочу использовать /геморно-тяжелую IDE типа Visual studio.. |
17.03.2020, 17:57 | #9 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
Лично я бы посоветовал бы qt creator)
from dark to light)
|
17.03.2020, 18:08 | #10 |
Форумчанин
Регистрация: 21.04.2008
Сообщений: 164
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с массивами (язык VBA) | Иришка89 | Помощь студентам | 11 | 14.11.2012 00:34 |
Работа с массивами и псевдослучайными последовательностями (Pascal). Задача | YkkRolex | Помощь студентам | 0 | 31.10.2012 08:20 |
Язык Си (работа с массивами) | виталик66 | Помощь студентам | 5 | 12.05.2012 19:58 |
Работа с массивами язык C | tesb | Помощь студентам | 0 | 18.12.2011 20:58 |
задача Visual Basic. Работа с массивами | ProgramBad | Помощь студентам | 3 | 14.02.2009 02:10 |