[ /tv/ /rf/ /vg/ /a/ /b/ /u/ /bo/ /fur/ /to/ /dt/ /cp/ /oe/ /bg/ /ve/ /r/ /mad/ /d/ /mu/ /cr/ /di/ /sw/ /hr/ /wh/ /lor/ /s/ /hau/ /slow/ /gf/ /vn/ /w/ /ma/ /azu/ /wn/ ] [ Main | Settings | Bookmarks | Music Player ]

No.38661 Reply
File: 1314317475964.gif
Gif, 119.82 KB, 338×450 - Click the image to expand
edit Find source with google Find source with iqdb
1314317475964.gif
Анон, нужная помощь. Встала задача о переносе слов по слогам. Реализовать нужно на Delphi, не суть. Решил использовать словари, ибо уж очень не хочется возиться с правилами переноса(хотя если у кого-нибудь есть-буду благодарен). Так вот, не подскажешь где найти такой вот словарик, где все слова будут разбиты на слоги? И потом, ни разу не использовал словари в программе, не расскажешь концепцию?
>> No.38663 Reply
>>38661
Во-первых, /s в другой стороне. Во-вторых - тебе нужно просто написать алгоритм, который выводит слова до тех пор, пока длина слова меньше разницы ограничение на длину-уже выведенное количество символов, а как только это условие не выполняется, разбивать по слогам (если это возможно) и переносить минимальное возможное количество слогов либо переходит на следующую строку? Если да, то это же элементарно (лично мне еще в детском садике объясняли, как в русском языке слова разбиваются на слога), а если нет, то тебе лучше более подробно описывать суть проблемы.
>> No.38664 Reply
>>38661
> если у кого-нибудь есть
Конечно есть, бери, не жалко: http://www.ozon.ru/context/detail/id/3499858/
>> No.38704 Reply
>>38664
Хм, я думал там какой-нибудь старославянский букварь со всеми возможными слогами.
>> No.38708 Reply
>>38663
Правила переноса несколько сложнее, чем просто по слогам.

мимокрокодил
>> No.38711 Reply
File: p_f.jpg
Jpg, 43.55 KB, 560×420 - Click the image to expand
edit Find source with google Find source with iqdb
p_f.jpg
>>38704
Тогда возьми еще и словарь и попробуй посчитать количество различных слогов.
>> No.38712 Reply
>>38708
Причем настолько, что это - докторская одного из асперов Кнута.
>> No.38713 Reply
>>38712
Диссертационная, если не ошибаюсь. Он использовал связку словаря с правилами,до сих пор считается лучшим алгоритмом.Я пока сделал со словарём переносов, буду щас правила пытаться задать.
ОП-кун
>> No.38714 Reply
>>38713
Я-мудак, не умею в буржуйскую науку.
>> No.38722 Reply
Обьясню, только не маячь на нулевой. Идиот ты все-таки. Тебе тут ламповую книгу посоветовали, мог бы и сам прочитать. Вот из-за таких людей, встраивающих огромные словари слов в программы, именуемых быдлокодерами, мы и получаем приложения весящие по гигу-другому.
1. Простое слово(бурелом)
Согласных – 4, гласных – 3, слогов получается тоже три: бу-ре-лом. Так и переносишь.
2. Посложнее
А)ожидает
Согласных – 3, гласных – 4, слогов получается четыре: о-жи-да-ет. Так переносить НЕЛЬЗЯ! Перенос в данном случае такой: о-жи-дает.
Б)новодвач
Согласных – 5, гласных – 3, слогов три: но-во-двач. Можно перенести и так.
3. Сложное слово(спецодежда)
Согласных – 6, гласных – 4, слогов четыре: спе-цо-деж-да а вот фиг тебе! Это сложносокращенное слово: спец и одежда должны считаться по-разному. То есть: спец-о-деж-да. Но перенос все-равно по-другому: спец-одеж-да.
4. Нельзя разбивать переносом буквенные аббревиатуры. Например, бамп.
5. Нельзя отрывать букву й от предшествующей гласной. Например, найти:
на-йти — неправильно;
най-ти — правильно.
6. Нельзя отрывать буквы ъ и ь от предшествующей согласной. Например, позвольте:
позвол-ьте — неправильно;
позволь-те — правильно.
7. Нельзя оставлять в конце строки или переносить на другую строку одну букву. Например, вайфу:
вайф-у — неправильно;
вай-фу — правильно.
8. Если после приставки идет согласная, переносить я тебе запрещаю НЕЛЬЗЯ! Пример:
эк-спонента — неправильно;
экс-понента — правильно.
9. Нельзя оставлять часть корня с приставкой:
надст-рочный — неправильно;
над-строчный — правильно.
10. При переносе сложных слов нельзя оставлять в конце строки начальную часть второй основы, если эта часть не составляет слога. Хуй его знает, конечно, что у тебя за слова будут, но я на 95% уверен, что данное правило тебе не понадобится. Например, десятиграммовый:
десятиг-раммовый — неправильно;
десяти-граммовый — правильно.
11. Нельзя оставлять в конце строки или переносить в начало следующей две одинаковые согласные, стоящие между гласными. Например, аккаунт:
а-ккаунт — неправильно;
ак-каунт — правильно.
Это правило не относится к начальным двойным согласным корня, а также к двойным согласным второй основы в сложных словах. Не знаю как ты будешь определять корень — это твои проблемы.
12.Нельзя переносить сокращённые обозначения мер, отрывая их от того, что указывает число измеряемых единиц. Например, нельзя переносить, кг/ам.
13. Нельзя переносить «наращения», т.е. отрывать при переносе от цифры соединённое с ней дефисом грамматическое окончание. Например, 3-е
14. Нельзя разбивать переносами условные графические сокращения типа и т.п., и пр., т.е., ж.д., о-во.
15. Нельзя переносить на другую строку пунктуационные знаки, кроме тире, стоящего после точки или после двоеточия перед второй частью прерванной прямой речи.
16. Нельзя оставлять в конце строки открывающую скобку и открывающие кавычки.
А теперь пиздуй с моего доброчатика сходи и доучись в школе!
Кто бы мне так с моими проблемами помог...
Миморазжевал >>38662-кун.
>> No.38729 Reply
File: 12995773652802.jpg
Jpg, 112.25 KB, 346×500 - Click the image to expand
edit Find source with google Find source with iqdb
12995773652802.jpg
>>38722
> Перенос в данном случае такой: о-жи-дает.
Нельзя переносить одну букву отдельно.
>> No.38730 Reply
>>38729
Не перенос же строк.
>> No.38731 Reply
>>38729
Извиняюсь, но тут мнение несколько различно. Но раз вы так настаиваете, то пусть это будет фиксом*.
>>38722-кун
>> No.38734 Reply
>>38730
А перенос чего тогда?
>> No.38738 Reply
>>38722
> 11. Нельзя оставлять в конце строки или переносить в начало следующей две одинаковые согласные, стоящие между гласными
> Например, аккаунт:
> а-ккаунт — неправильно;
> ак-каунт — правильно.
Ну, это же является частным случаем переноса не по слогами.
Слоги в этом слове: ак-ка-унт.
Еще примеры: гет-то, труп-па, ас-сор-ти-мент. Руководствуясь необходимым, но недостаточным, условием переноса по слогам, невозможно нарушить правило 11.
>> No.38740 Reply
>>38722
> 7. Нельзя оставлять в конце строки или переносить на другую строку одну букву. Например, вайфу:
> вайф-у — неправильно;
> вай-фу — правильно.
Очень плохой пример. Ибо так же частный случай переноса не по слогам.
Правильный пример: череду-ю, животно-е.

А вообще, няша, читай лучше тут: http://dictionary.liferus.ru/dictionary_19.htm
>> No.38742 Reply
>>38740
Блеа, осло:
> 112. Кроме случаев, отмеченных в пп. 107, 108, 109, деление на слоги при стечении согласных свободное: вес-на и ве-сна; сест-ра, се-стра, сес-тра; род-ство, родст-во, родс-тво.
Хоть, имхо, омск, и раньше так никогда не делали.
>> No.38766 Reply
>>38740
> http://dictionary.liferus.ru/dictionary_19.htm
Ты это называешь умным источником? Как мне кажется, более чем достаточно описанного этим аноном >>38742. Честно говоря, многие места там и вправду попахивают омском.
>>38722-кун
>> No.38767 Reply
>>38766
> Ты это называешь умным источником? Как мне кажется, более чем достаточно описанного этим аноном
Там примеры местами лучше были.
>> No.38782 Reply
>>38740
Какая разница, если всё равно одну букву никогда не переносят? Это более строгое требование, чем перенос по слогам.
>> No.38783 Reply
>>38782
> Это более строгое требование, чем перенос по слогам.
Да, но всегда же лучше ссылаться на более общее же, чем на более специфичное же. Это проще же.
>> No.38785 Reply
>>38783
Что в твоём понимании общее и специфичное? Если ты пишешь алгоритм, то в первую очередь ты должен реализовывать отбор по самому строгому правилу, затем по более мягкому и так далее.
>> No.38795 Reply
>>38785
> в первую очередь ты должен реализовывать отбор по самому строгому правилу, затем по более мягкому и так далее.
Ты хочешь сказать, что "перенос осуществляется ТОЛЬКО по слогам" мягкое правило?
Во-вторых, с уже разбитым по слогам словам проще работать в большинстве уже существующих правил. Исключение составляют разве что слова с приставками заканчивающиеся на согласную с последующей гласной кроме "ы".
>> No.38796 Reply
>>38795
> Ты хочешь сказать, что "перенос осуществляется ТОЛЬКО по слогам" мягкое правило?
Анон не может в формальную логику. Запретив все переносы по одной букве, ты тем самым автоматически запретишь и все переносы слогов, в которых меньше двух букв.


Password:

[ /tv/ /rf/ /vg/ /a/ /b/ /u/ /bo/ /fur/ /to/ /dt/ /cp/ /oe/ /bg/ /ve/ /r/ /mad/ /d/ /mu/ /cr/ /di/ /sw/ /hr/ /wh/ /lor/ /s/ /hau/ /slow/ /gf/ /vn/ /w/ /ma/ /azu/ /wn/ ] [ Main | Settings | Bookmarks | Music Player ]