Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: 1 2 3 4 [5] 6 7   Вниз
  Печать  
Автор Тема: Самое длинное и короткое слово  (Прочитано 153853 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #120 : 29-12-2009 09:15 » 

Dana, нет, нет и нет

начало

ввести предложение
разбить предложение по словам
найти самое
вывести самое

Конец.

Начало (разбить по словам)

Цикл до конца строки
Прочитать символ
Анализ символа
  Разделитель? (это слово я хотел от тебя услышать)
     ДА - запомнить слово
     НЕТ - продолжить цикл
Продолжить цикл

Конец (разбить по словам)


Можно ли это все назвать неформализовнным  алгоритмом? Если исключить слово цикл, то скорее да. (Слово цикл можно заменить, например - исследовать предложение до конца.

Наличие "специализированного" слова цикл превращает это описание в Блок Схему Со Словами.

Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #121 : 29-12-2009 09:35 » 

Все гениальное просто...

Теперь блок-схему рисовать?
« Последнее редактирование: 29-12-2009 10:01 от Sla » Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #122 : 29-12-2009 10:01 » 

Наверное Улыбаюсь
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #123 : 29-12-2009 10:22 » 

Чувствую вы мной не довольны ((
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #124 : 29-12-2009 10:28 » 

Dana, шутишь Улыбаюсь Мы все в восторге, честно Улыбаюсь Так что давай, дальше разбирайся
Записан

Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #125 : 29-12-2009 10:54 » 

Вот схемка  Меня одолевают смутные сомнения

* блок-схема.jpg (261.77 Кб - загружено 946 раз.)
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #126 : 29-12-2009 11:03 » 

 Улыбаюсь

* bs.jpg (166.4 Кб - загружено 1038 раз.)
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #127 : 29-12-2009 11:53 » 

 Скромно так...

* блок-схема.jpg (259.4 Кб - загружено 907 раз.)
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #128 : 29-12-2009 12:56 » 

 Не понял

* bs.jpg (150.18 Кб - загружено 932 раз.)
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #129 : 30-12-2009 03:22 » 

 Краснею

* блок-схема.jpg (282.85 Кб - загружено 935 раз.)
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #130 : 30-12-2009 04:38 » 

Dana, вот перед тобой на листке записано предложение. Без каких либо компьютеров выполни свое задание и опиши логику, которой ты руководствовалась.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #131 : 30-12-2009 05:21 » 

Вижу предложение начинаю считать сколько букв в первом слове, запоминаю, начинаю считать второе слово, если больше чем в первом запомню его если нет пропущу, следующее также. В итоге напишу самое длинное (короткое), если их несколько одинаковых напишу все.
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
darkelf
Молодой специалист

de
Offline Offline

« Ответ #132 : 30-12-2009 06:27 » 

Более формальный вариант алгоритма:
0. Начало.
1. Читаю предложение.
2. Пропускаю разделители.
3. Конец строки? если да, то переход к шагу 9.
4. Запоминаю позицию в строке текущего слова.
5. Пропускаю символы, пока не встретится разделитель.
6. Выделенное слово больше последнего запомненного, если нет, то переход к шагу 8.
7. Запоминаю выделенное слово и его длину.
8. Переход к шагу 3.
9. Вывод запомненного слова/запомненных слов и его длины/их длин если таковое/таковые имеются.
10. Конец.
Записан
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #133 : 30-12-2009 07:49 » 

мне надо блок схему
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #134 : 30-12-2009 07:52 » 

darkelf, в алгоритме, однако, пробелы...
В п.6. у тебя разве есть "запомненное слово"? Откуда оно возьмется, когда еще не было "последнего запомненного"? И инициализации состояния нет. Улыбаюсь

Dana, блок-схему рисовать можно долго, но если не знать алгоритма, то она так и будет неверная, хоть сто вариантов нарисуй. Она же, лишь графическое представление алгоритма, диаграмма.
« Последнее редактирование: 30-12-2009 07:53 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #135 : 30-12-2009 08:09 » 

я просто выложила свою но мне так и не сказали правильно или нет ((
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #136 : 30-12-2009 08:19 » 

Dana, правильно, но слишком обобщено. Прежде всего, мы оперируем не готовыми словами, а строкой - последовательностью символов. Соответственно, нужно перебирать символы с начала строки до конца и проверять на границу слова (искать и начало и конец).
Вот пример строки: " мама мыла    раму".
Как видишь, строка не обязательно начинается со слова и между словами может быть несколько разделяющих символов.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
darkelf
Молодой специалист

de
Offline Offline

« Ответ #137 : 30-12-2009 08:42 » 

darkelf, в алгоритме, однако, пробелы...
В п.6. у тебя разве есть "запомненное слово"? Откуда оно возьмется, когда еще не было "последнего запомненного"? И инициализации состояния нет. Улыбаюсь
немного недоглядел, сорри..
Алгоритм v.2
0. Начало.
1. Инициализируем длину запомненного слова равным 0, и само заполненное слово ""
2. Читаем предложение.
3. Пропускаем разделители.
4. Конец строки? если да, то переход к шагу 10.
5. Запоминаем позицию в строке текущего слова.
6. Пропускаем символы, пока не встретится разделитель.
7. Выделенное слово больше последнего запомненного, если нет, то переход к шагу 8.
8. Запоминаем выделенное слово и его длину.
9. Переход к шагу 3.
10. Вывод запомненного слова/запомненных слов и его длины/их длин если таковое/таковые имеются.
11. Конец.

Dana по этому алгоритму легко рисуется и схема, и пишется программа (с использованием русско-C-шного словаря).
Записан
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #138 : 30-12-2009 09:09 » 

 Не надо

* darkelf.jpg (189.21 Кб - загружено 942 раз.)
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
darkelf
Молодой специалист

de
Offline Offline

« Ответ #139 : 30-12-2009 09:31 » 

Dana похоже, но в варианте "нет" условия "Текущее слово больше предыдущего?", как мне кажется, предыдущее слово запоминать не надо - оно у нас и так запомнено.
Записан
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #140 : 30-12-2009 09:35 » 

Ладно, пофиг на эту блок-схему.
Если начинать писать программу:
1. Инициализируем длину запомненного слова равным 0, и само заполненное слово ""
это как?
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #141 : 30-12-2009 09:57 » 

darkelf, опять недоработка: длина 0 (в инициализации) всегда самая короткая Ага


Dana, не вижу, чтобы ты поняла... Жаль Пока не поймешь, программу писать рано.

Инициализируем - значит, задаем исходное значение.
Например: берем пустой стакан. Пустой - это инициализация. Если бы мы взяли просто стакан, то кто знает, что в нем нОлито...
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #142 : 30-12-2009 10:01 » 

Походу застрелиться проще
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
darkelf
Молодой специалист

de
Offline Offline

« Ответ #143 : 30-12-2009 10:11 » 

RLX следующий вариант:

Алгоритм v.3.1
0. Начало.
1. Инициализируем признак отсутствия самого длинного и самого короткого слова
2. Читаем предложение.
3. Пропускаем разделители.
4. Конец строки? если да, то переход к шагу 14.
5. Запоминаем позицию в строке текущего слова.
6. Пропускаем символы, пока не встретится разделитель.
7. Если нет самого длинного слова и самого короткого слова, то запоминаем текущее и как самое длинное и как самое короткое.
8. Переход к шагу 3.
9. Выделенное слово больше последнего самого длинного, если нет, то переход к шагу 11.
10. Запоминаем выделенное слово и его длину как самое длинное.
11. Выделенное слово меньше последнего самого короткого, если нет, то переход к шагу 13.
12. Запоминаем выделенное слово и его длину как самое короткое.
13. Переход к шагу 3.
14. Если найдено самое длинное слово, то вывести его.
15. Если найдено самое короткое слово, то вывести его.
16. Конец.

Dana, компьютеры они вообще довольно примитивные создания, пока точно всё не распишешь - будут или работать не правильно, или правильно, но по совокупности ошибок, что тоже неправильно. Тем более Вами, вроде-бы как, было заявлено желание понять...
« Последнее редактирование: 30-12-2009 10:15 от darkelf » Записан
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #144 : 30-12-2009 10:13 » 

Dana, постой паровоз, не стучите колеса (с)

Твоя задача обрисовать квадратиками, трапециями, ромбами весь тот алгоритм, который мы тебе УЖЕ написали.

Давай еще раз с самого начала.

1. Ввести предложение
2. Разбить предложение на слова
   2.1. Повторять до тех пор пока не конец предложения
   2.2. Прочитать символ
   2.3 Если РАЗДЕЛИТЕЛЬ то
     2.3.1  (ДА)запомнить предыдущие символы как слово
     2.3.2 (НЕТ)Иначе уйти к началу цикла
   2.4. К началу цикла 2.1.
3. Найти самое
   3.1 Эталонное = первому
   3.2. Пока не закончились слова
   3.3.  Если Эталонное больше(меньше)
       3.3.1 (ДА)то запомнить эталонное
   3.4. Уйти к началу цикла 3.2
4. Вывести САМОЕ = Эталонному.
 
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #145 : 30-12-2009 10:15 » 

darkelf, замечательно, но в твоем алгоритме смешались люди, кони (с)
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dana
Опытный

ru
Offline Offline
Пол: Женский

« Ответ #146 : 30-12-2009 11:00 » 

Спасибо всем что помогали!!! Да-да
Записан

Прославься в городе - возбудишь озлобленье, а домоседом стань - возбудишь подозренье. Не лучше ли тебе, хотя б ты Хызром был, ни с кем не знаться, жить всегда в уединенье?
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #147 : 30-12-2009 11:02 » 

Dana, ты что от нас уходишь?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #148 : 30-12-2009 14:43 » 

Да, время не лучшее для алгоритмии... Время наливать Ага
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
lapulya
Молодой специалист

ru
Offline Offline

« Ответ #149 : 30-12-2009 20:46 » 

Вот!!! Я так и знал!!!... напрыгнули.... панимаишь... на человека... мои посты потерли... Улыбаюсь А теперь в соседней ветке общаются с человеком который вообще ничего делать не хочет, дайте ему все готовое... если бы можно было не дышать, то он бы уже давно не дышал... А тут... такой кадр!!! сама хочет!!!

Сорри за очередной офтоп.
Записан

С уважением Lapulya
Страниц: 1 2 3 4 [5] 6 7   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines