LCME Пятница, 28.07.2017, 16:03
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: anatoliy 
Форум » Домашние задания » Программирование » Домашнее задание от 18.10 (Оптимальная раскладка)
Домашнее задание от 18.10
freidomДата: Понедельник, 18.10.2010, 17:52 | Сообщение # 1
Главный тут
Группа: Администраторы
Сообщений: 273
Репутация: 20
Статус: Offline
И вновь классная работа плавно перетекает в домашнее задание.

Требуется найти наиболее оптимальную раскладку букв для клавиш мобильного телефона (8 штук). Алфавитный порядок нарушать нельзя, надо только расставить 7 разделителей. Внимание, задание нужно решать для РУССКОГО ЯЗЫКА.

Файл, приложенный к этому сообщению - это результат пяти часов сидения перед экраном wacko Написал на OCaml, ибо Паскаль >>=, а Haskell не дружит с русским языком.

Как протестировать
В начале файла находятся все параметры, которые имеет смысл изменять: адрес файла, из которого брать статистику для русского языка (я использовал http://alltxt.org.ua/attachment.php?id=198 ), случайная величина (1/n, где n - номер буквы на кнопке) и критическая длина (6) - если найдётся кнопка, на которой букв больше, то оценка всей раскладки сбрасывается в 0.

Прикрепления: layout.ml(4Kb)
 
froci9rgevkaДата: Четверг, 21.10.2010, 01:03 | Сообщение # 2
Лейтенант
Группа: Проверенные
Сообщений: 71
Репутация: 1
Статус: Offline
Вот какой расклад должен у вас получится, дети.

1. _____________2. а, б, в, г _______3. д, е, ж, з

4. и, й, к, л _____5. м, н, о _________6. п, р, с

7. т, у, ф, х _____8. ц, ч, ш, щ, ъ ____9. ы, ь, э, ю, я

ВОТЬ! cool

Добавлено (21.10.2010, 01:03)
---------------------------------------------
ЫЫЫ, Дима lol happy Дмитрий Григорьевич мне официально разрешил сделать для английского текста, а на Окамле, как нам всем известно он писать не разрешает)))
Так что Я всё сделал на Хасскеле.... Вот в чём Я с тобой согласен, так это в том, что это полный п...ц. Халявная задача, расписывается на 70 строк - это не нормально!!! wacko
Вощем всё написал приблизительно за 2,5 часов... В итоге получилось, что на телефонах сочетание клавиш далеко от оптимального. Т.к. у меня выдало вот это, и скорее всего это правда.

1__________2 a b_______3 c d

4 e f g______5 h i j k____ 6 l m

7 n o p q____8 r s t______9 u v w x y z
tongue

Прикрепления: keyboard2.hs(2Kb)


Саня - тащщи! XD

"If you have time to panic, you have time to be doing something productive" © Josh Whipple

You’re standing on your Bridle. Idiot! =)
© Roland “Slim” Simpson

Сообщение отредактировал froci9rgevka - Суббота, 06.11.2010, 13:16
 
freidomДата: Четверг, 21.10.2010, 01:07 | Сообщение # 3
Главный тут
Группа: Администраторы
Сообщений: 273
Репутация: 20
Статус: Offline
Что ж...
Твою раскладку моя программа оценивает в 58.026130 попугаев. Немного поигравшись с ней, я поднял её рейтинг до 65.579779.
Code
[ абвгд ежз ийклмн оп рс туфхц чшщъ ыьэюя ]

Я же нашёл раскладку с оценкой в 65.629597.
Code
[ абвг дежз ийк лмн опр стуфхц чшщъ ыьэюя ]

А пропустив её через свою программку, получил раскладку с оценкой 67.609081.
Code
[ абвгд ежз ийк лмн опр стуфхц чшщъ ыьэюя ]

Quote (froci9rgevka)
Дмитрий Григорьевич мне официально разрешил сделать для английского текста, а на Окамле, как нам всем известно он писать не разрешает)))

Замечательно) Меня вот особо просили написать для русского языка, а на вопрос, можно ли писать на OCaml, последовал ответ "Ну пиши".

 
froci9rgevkaДата: Четверг, 21.10.2010, 18:59 | Сообщение # 4
Лейтенант
Группа: Проверенные
Сообщений: 71
Репутация: 1
Статус: Offline
Quote (freidom)
Замечательно) Меня вот особо просили написать для русского языка, а на вопрос, можно ли писать на OCaml, последовал ответ "Ну пиши".

хаха... ну вот... как стало известно из речи Дмитрия Григорьевича, которая была сказана сегодня, ты вроде немного лохонулся.... biggrin

Quote (freidom)
Твою раскладку моя программа оценивает в 58.026130 попугаев. Немного поигравшись с ней, я поднял её рейтинг до 65.579779.

Я написал раскладку с моего телефона, которая, как сказал Дмитрий Григорьевич, правильная, сам я не проверял.
Ты не заметил, что в конце стоит "дети" - это я просто цитировал Штуку wink


Саня - тащщи! XD

"If you have time to panic, you have time to be doing something productive" © Josh Whipple

You’re standing on your Bridle. Idiot! =)
© Roland “Slim” Simpson

Сообщение отредактировал froci9rgevka - Четверг, 21.10.2010, 19:00
 
Форум » Домашние задания » Программирование » Домашнее задание от 18.10 (Оптимальная раскладка)
Страница 1 из 11
Поиск:

Copyright Freidom © 2017 Хостинг от uCoz