|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.01.2012, 00:49 | #1 |
Новичок
Джуниор
Регистрация: 26.01.2012
Сообщений: 5
|
Си задача
Условие: Дана строка – предложение. Определить слово в строке, встречающееся наибольшее количество раз, и вывести его на экран. Если таких слов несколько, то все из них. Если все слова в строке встречаются одинаковое количество раз, то ничего не выводить.
================= пока ничего не придумывается вот все что на данный момент написано на листке Код:
2.) как делать проверку встречается ли слово в предложении. сравнивая каждый элемент ? как это реализовать циклом. или лучше использовать strcmp ? |
27.01.2012, 01:38 | #2 |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
Вот код, который я даже не компилил. Время у меня полпятого утра, поэтому за качество не отвечаю.
P.S. Чтобы не проверять слово второй раз надо каждый раз считывая слово, пробегаться по массиву ArrayOfWords в поисках такого же. Если не найдется, то дописать его в конец массива. Таким образом вы получите массив с неповторяющимися словами. Код:
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
27.01.2012, 01:39 | #3 |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
А вообще всё можно сделать в 2 раза проще. Но почему-то мне это в голову пришло только сейчас и писать уже что-нибудь глаза слипаются
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
27.01.2012, 16:22 | #4 |
Новичок
Джуниор
Регистрация: 26.01.2012
Сообщений: 5
|
да хорошо бы по проще )
вот мне тут поткинули одну идею : "Создаём новый массивДальше добавляете слова в этом массив, (если слова там уже присутствует, то увеличиваете счетчик). Потом сортируете массив по полю count по убыванию." как я понимаю берем новый массив и добавляем в него по порядку каждое слово из исходного массива, если в исходном массиве встретилось слово которое уже есть в новом массиве то его не добавляем а увеличиваем счетчик для этого слова. а вот как это сделать ? счетчик для каждого слова. |
27.01.2012, 17:38 | #5 | |
Участник клуба
Регистрация: 30.01.2011
Сообщений: 1,578
|
Цитата:
пишу код не только за печеньки
|
|
27.01.2012, 18:26 | #6 |
Новичок
Джуниор
Регистрация: 26.01.2012
Сообщений: 5
|
вот что удалось придумать за время после последнего поста
Код:
в строке j=0; while (s1[i] != ' ' ) перед началом цикла повидимому нужно както обнулить строку sp ато вдруг следующее слово будет короче чем sp а в sp уже есть символы и в конце слова останутся старые символы, как это сделать (обнулить строку sp) ? |
27.01.2012, 20:22 | #7 |
Новичок
Джуниор
Регистрация: 26.01.2012
Сообщений: 5
|
допустим перевели строку в двумерный массив.
получили слова записанные "в столбик" что дальше делать с этой матрицей |
27.01.2012, 22:05 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А мне кажется задачу эту нужно решать так:
Код:
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача о стрелках (задача Майхелла) | Silly Student | Помощь студентам | 0 | 14.12.2011 22:20 |
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel | Toofed | Помощь студентам | 0 | 30.11.2011 01:12 |
Задача минимизации дисбаланса на линии сборки (задача минимакса) | LenZab | Microsoft Office Excel | 13 | 13.03.2011 22:51 |