А вот автоматические рекомендации для определенного уровня и запросов - схемы тренировок, питания, статьи соответствующие, обучение элементам под данный уровень - это действительно сложно, но действительно стоящий проект.</quote>
На самом деле не так это сложно. Статьям (тренировкам) проставляются свойства к какой категории они относятся, также их вес в этой категории. При выборе, допустим, подтягиваний, выводятся статьи в порядке уменьшения категорий. Питание выводить всегда. Травмам также как и тренировкам проставляются к какому упражнению подходит статья и вес.
100-дневка. Определяется подходят ли параметры под новичка. Также смотрится по профилю, выполнялась ли им раньше стодневка.
Таблица подтягиваний просто выводится начиная с текущего максимума в профиле. По аналогии отжимания, учитывая если там специфика, пресс и т.д.
Самое интересное - элементы. Интересное, но далеко не сложное. Каждому элементу проставляется набор ОФП какой должен быть для него выполнен. Например (от балды): угол под турником с фиксацией: 5 подтягиваний (надо же как-то забраться наверх

), подъем ног к турнику - 10 раз, отжимания на брусьях - 12. Далее смотрится профиль пользователя, допустим у него, соответственно, 5-2-15. Теперь третье, берется весовая функция. Весовая функция, это просто набор коэффициентов, которые отвечают за "значимость" каждого из упражнений. Например, для простоты, пусть все упражнения одинаково значимы, значит, весовая функция будет 1-1-1. Тогда считаем для уголка: (5-5)*1 + (10-2)*1 + (12-15)*1*0 (в третьем коэффициенте умножили на ноль, т.к. у чела даже больше чем надо брусьев). Получилось 8 баллов. Так же считается по всем элементам. Где баллов меньше, то элементы близки к освоению. Где баллов 0 - те уже можно учить.
Весовая функция должна быть общая, для того, что бы не приходилось ее проставлять для каждого элемента, особенно для тех в которых сомневаешься. Но если весА назначены для определенного упражнения, то учитываются они. Но должны быть правила составления весов. Если мне не изменяет память сумма их должна быть равной. Т.е. если, например, общая весовая функция состоит из одних единиц, то сумма весов равна количеству базовых упражнений. Значит средний вес равен единице. Теперь мы, например, делаем функцию для уголка. Там участвуют три упражнения. Сумма весов должна быть равна трем. Пресс мне кажется там более важен, потом брусья, потом подтягивания. Следовательно: подтягивания 0.7, подъем ног к турнику 1.4, отжимания от брусьев 0.9. Пересчитаем нашего бойца: (5-5)*0.7 + (10-2)*1.4 + (12-15)*0.9*0 = 11.2. Да... побольше стало. А нечего пресс запускать

. Может ему и на самом деле выход силы будет ближе. Но это надо еще расчитать
