Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет vadim_i_z ([info]vadim_i_z)
@ 2007-01-27 21:21:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Ответ на вопрос
про алгоритмы сортировки.

Похоже, я всех запутал.
154 - это количество сонетов Шекспира. Рыская по Сети в поисках нового перевода, я наткнулся на некий немецкий сайт (адрес, к сожалению, потерял), где сонеты были обычным образом пронумерованы римскими цифрами, а потом выложены в порядке латинского алфавита номеров:
C
CI
CII
...
CIX
CL
...
CLIV
CX
...
ну и так далее, вплоть до последнего сонета, если не ошибаюсь, номер XXXVIII.
Вот так обстояли дела...


(Добавить комментарий)


[info]konstkaras@lj
2007-01-27 16:27 (ссылка)
А, понятно. Есть подобный эффект - на старых MP3-дисках песни нумеруются в виде Track1.mp3, Track2.mp3 ... Track11.mp3 (к примеру), и на DVD-плеере, скажем, играются в порядке Track1, Track10, Track11, Track2 ... - такова алфавитная сортировка.

(Ответить)


[info]livius@lj
2007-01-27 17:02 (ссылка)
Ну, так о чем и речь?
Главное -- правильно написать функцию сравнения (чтобы корректно сравнивала числа, записанные в римской нотации).

(Ответить) (Ветвь дискуссии)


[info]vadim_i_z@lj
2007-01-27 17:45 (ссылка)
Для авторов того сайта главное - хорошего нарколога найти... Я долго смотрел в экран, пытаясь понять, куда делись первые 99 сонетов...

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]livius@lj
2007-01-27 20:11 (ссылка)
Да уж...
Осталось только в самих сонетах буквы по алфавиту отсортировать...

(Ответить) (Уровень выше)


[info]wolfriend@lj
2007-01-27 17:10 (ссылка)
Ну, и чем мой ответ был хуже?:))

(Ответить) (Ветвь дискуссии)


[info]vadim_i_z@lj
2007-01-27 17:41 (ссылка)
Так я и ответил, что почти правильно!

(Ответить) (Уровень выше)


[info]vmtcom@lj
2007-01-27 21:06 (ссылка)
Забавно что в Юникоде есть символы для римских цифр, и они помечены в стандарте как цифры. Если не пользоваться Ⅺ и Ⅻ то вроде все сонеты будут сортироваться нормально.

U+2160 Ⅰ ROMAN NUMERAL ONE
U+2161 Ⅱ ROMAN NUMERAL TWO
U+2162 Ⅲ ROMAN NUMERAL THREE
U+2163 Ⅳ ROMAN NUMERAL FOUR
U+2164 Ⅴ ROMAN NUMERAL FIVE
U+2165 Ⅵ ROMAN NUMERAL SIX
U+2166 Ⅶ ROMAN NUMERAL SEVEN
U+2167 Ⅷ ROMAN NUMERAL EIGHT
U+2168 Ⅸ ROMAN NUMERAL NINE
U+2169 Ⅹ ROMAN NUMERAL TEN
U+216A Ⅺ ROMAN NUMERAL ELEVEN
U+216B Ⅻ ROMAN NUMERAL TWELVE
U+216C Ⅼ ROMAN NUMERAL FIFTY
U+216D Ⅽ ROMAN NUMERAL ONE HUNDRED
U+216E Ⅾ ROMAN NUMERAL FIVE HUNDRED
U+216F Ⅿ ROMAN NUMERAL ONE THOUSAND

А еще есть для детей калькулятор (http://www.coolmath4kids.com/calculators/romanus/index.html).

(Ответить) (Ветвь дискуссии)


[info]vadim_i_z@lj
2007-01-27 21:27 (ссылка)
Осталось выяснить, зачем нужно сортировать сонеты, если с этой задачей задолго до того уже справился сам автор...

(Ответить) (Уровень выше)


[info]pascendi@lj
2007-01-28 05:54 (ссылка)
Позор безграмотному публикатору.
Процедура преобразования латинских цифр в арабские и корректной сортировки давно существует.

(Ответить) (Ветвь дискуссии)


[info]vadim_i_z@lj
2007-01-28 06:00 (ссылка)
Позор.
Хотя особой надобности в сортировке сонетов я всё равно не вижу. Ну отсортированы они 400 лет назад раз и навсегда...

(Ответить) (Уровень выше)


[info]just_tom@lj
2009-03-10 15:56 (ссылка)
Ааа, вот оно что.

(Ответить)