Интересно, что в английском языке не более, чем за пять шагов мы придем к 4 и зациклимся.
Вот пример короткого кода на Ruby, производящего нужный нам граф для английского языка
require 'humanize'
require 'rgl/adjacency'
require 'rgl/dot'
result = RGL::DirectedAdjacencyGraph.new
1.upto(99) { |i|
result.add_edge(i.to_s, i.humanize(locale: :en).length.to_s)
}
result.dotty
Аналогично устроен код для французского языка
result = RGL::DirectedAdjacencyGraph.new
1.upto(99) { |i|
result.add_edge(i.to_s, i.humanize(locale: :fr).length.to_s)
}
result.dotty
В этом случае мы приходим к циклу 5>4>6>3>5.
Комментарии (31)
VovanZ
27.01.2017 18:17+2А есть визуализации для других языков? (английский, французский)
dfedchenko
27.01.2017 18:23-2Есть для английского, но граф в отличие от русского был построен не мной, а честно найден на просторах Интернета.
А вот для французского где-то затерялся.
PapaBubaDiop
27.01.2017 18:48Сделайте сервис для фамилия-имя-отчество и даты рождения. Все люди разобьются на 3 категории. Вещать можно будет и все такое. Кто на 6-ку попал — непредсказуемая, загадочная личность. Тройка — божий человек. 11 — дуб-физкультурник…
dfedchenko
27.01.2017 18:57-1Замечательная идея:) Лучше, конечно, сперва подобрать язык, для которого граф будет содержать большее количество циклов.
alff31
27.01.2017 21:25+1В чем смысл то поста? С трудом представляю практическое применение этих данных.
Ещё подумал, в качестве домашнего задания можно чуть изменить условия и иследовать граф при следующим условии: не суммировать кол-во букв разных слов, а приставлять рядом, пример:
1234 — Тысяча двести тридцать четыре -> 6686 -> шесть тысяч восемьдесять шесть -> 55126…
Интересно, разойдется ли подобный граф или куда-нибудь придет.
alff31
27.01.2017 21:30+2И причем тут LaTeX? Если вы в нем строили график, то хотя бы расписали подробности
QDeathNick
28.01.2017 09:44Неделя шизофрении на хабре продолжается :)
Если таких графов строить много, да в голове, а не в латексе, то добро пожаловать в 1-ю больницу имени Алексеева.
Можно ещё построить например граф: Выберем число и сопоставим ему число равное позиции в алфавите первой буквы слова обозначающего выбранное число.
gamekoff
28.01.2017 11:08Еще интересно, что в циклах есть и простые числа – 3, 5, 11, и сложные – 4, 6. Как себя ведут простые числа в таких деревьях?
VovanZ
28.01.2017 15:07Не думаю, что количество букв в записи числа как-то связано со свойствами этого числа.
pestilent
29.01.2017 17:32Когда был подростком тоже интересовался этой темой. В латыни сходится к циклу quattuor<->octo. В эсперанто никаких циклов, только du, tri, kvar. А больше (кроме английского и французского, упомянутых в статье) я ни до чего не добрался тогда.
johnfound
А подробнее? Не понял ничего.
dfedchenko
Поясните, пожалуйста, что именно не понятно?
johnfound
Вот это.
dfedchenko
Например, N=40.
1. Слово «сорок» состоит из 5 букв.
2. Слово «пять» из 4 букв.
3. Слово «четыре» из 6 букв.
4. Слово «шесть» из 5 букв.
5. Возвращаемся в пункт 1.
johnfound
Вот так уже понял.
stas404
Отлично, все сходится:
Например, N=10 (например, как в слове «троллейбус»).
1. Слово «десять» состоит из 6 букв.
2. Слово «шесть» из 5 букв.
3. Слово «пять» из 4 букв — прямо, как в слове «хлеб» :)
IvaYan
Давайте я Вам объясню:
Теперь все понятно, не так ли?
dfedchenko
Просто веселая пятничная каруселька с итерациями.
nckma
Было бы интересно посмотреть на деревья других языков.
dfedchenko
Добавил для французского и английского.