Від чого береться відсоток у програмі
Від чого береться відсоток у програмі та звідки це число взагалі з’являється.
Автор: Kiptly ·
На цій сторінці
Відсотків два, і це не те саме
Відсоток — це завжди відсоток від чогось, і в застосунку таких «чогось» два. Який із них перед вами, залежить від того, звідки взявся рядок, і на екрані це зараз ніяк не написано — у цьому й полягає більша частина причини, з якої існує ця сторінка.
У готовій програмі підходи основного руху зберігаються як номер тижня, номер підходу, відсоток, цільова кількість повторень і позначка AMRAP. Відсоток тут — частка від вашого тренувального максимуму: числа, яке ви один раз ввели самі, коли почали програму.
У звичайному шаблоні — вашому власному чи складеному тренером — у вправи замість цільової ваги може стояти цільовий відсоток. Цей відсоток — частка від вашого розрахункового одноповторного максимуму, порахованого за вашими ж записаними підходами формулою Еплі, про яку розповідає сторінка про рекорди.
Тренувальний максимум — це число, яке вводите ви
Його ніщо не виводить, ніщо не оновлює і ніщо не звіряє з тим, що ви насправді піднімаєте. Він зберігається окремо для кожної вправи тієї програми, яку ви проходите, і сервер приймає будь-яке значення від нуля до стелі з таблиці нижче. Вправи, яких у цій програмі немає, він не відхиляє, а мовчки відкидає: у відповіді повернуться збережені максимуми, а решти там просто не буде.
На екрані налаштування є необов’язковий помічник: введіть одноповторний максимум — і він підставить дев’ять десятих від нього, те саме правило, навколо якого зазвичай і написані відсоткові програми. Він спрацьовує лише на ваше прохання, на телефоні, і округлює до десятої частки кілограма. Далі підставлене значення — звичайне число в полі, рівно так, ніби ви ввели його руками.
Суттєве тут те, що тренувальний максимум навмисно не дорівнює вашому найкращому результату. Програми, написані у відсотках, розраховані на робоче число, яке ви візьмете і в поганий день, — звідси й правило, і те, що помічник підставляє значення нижче за ваш максимум, а не рівне йому.
Що застосунок із ним робить
Тренувальний максимум множиться на відсоток, ділиться на сто й округлюється до найближчих 2,5 кг. Це весь розрахунок, він відбувається на сервері, а відсоток їде разом із підходом — тож видно і те, і те.
Чотиритижневий цикл зберігається рядками. У тому, що їде разом із застосунком: перший тиждень — 65, 75 і 85 відсотків по п’ять повторень; другий — 70, 80 і 90 по три; третій — 75, 85 і 95 на п’ять, три й одне. Останній підхід кожного з цих тижнів несе позначку AMRAP — стільки повторень, скільки вийде, а не фіксовану кількість, — і позначка зберігається в кожного підходу, а не виводиться.
Четвертий тиждень — 40, 50 і 60 відсотків по п’ять, без AMRAP: легкий тиждень, записаний у даних самої програми. Виходить, що це третя річ, яку продукт називає розвантаженням, і єдина, яку він не обчислює й не пропонує, — просто наступний тиждень циклу. Двом іншим присвячена окрема сторінка.
Якщо тренувальний максимум для вправи не заданий, підходи все одно прийдуть: відсоток і цільові повторення на місці, а ваги просто немає. Так зроблено навмисно. Вигадати вагу з оцінки, навколо якої програма не писалася, означало б видати здогад за припис.
Числа і де вони лежать
Числа обох шляхів, виписані з API та із застосунку під час збирання сайту. Дільник Еплі тут тому, що другий вид відсотка рахується від формули, а не від введеного вами числа, — це та сама тридцятка, яку публікує сторінка про рекорди.
| Що це | Значення | Звідки взято |
|---|---|---|
| Вага в програмі округлюється до НАЙБЛИЖЧОГО кратного цьому числу, а не вниз. | 2.5 | apps/api/src/template/program.service.ts |
| Що підставляє необов’язковий помічник: таку частку від введеного вами максимуму. | 0.9 | apps/flutter/lib/features/programs/presentation/training_max_setup_screen.dart |
| Найбільший тренувальний максимум, який сервер збереже для однієї вправи. | 1000 | apps/api/src/template/dto/set-training-maxes.dto.ts |
| Тридцятка у формулі Еплі: e1RM = вага × (1 + повторення ÷ 30). | 30 | apps/api/src/smart/workout-plan.service.tsapps/api/src/workout/workout.service.ts |
| Найменший крок у метричній сітці — пара млинців по 1,25 кг. | 2.5 | apps/api/src/smart/workout-plan.rules.tsapps/flutter/lib/features/workout/presentation/workout_provider.dart |
Другий шлях: відсоток від оцінки
Вправа в шаблоні обирає вагу за суворим порядком, і перемагає перше, що дало відповідь: явно задана цільова вага, далі відсоток, помножений на ваш розрахунковий одноповторний максимум, далі — для вправ із типом «власна вага» — ваша маса тіла, а далі нічого.
Цей розрахунок відбувається на телефоні, у момент складання тренування, і округлюється до цілого кілограма. Він бере найкращу оцінку з вашої історії за цією вправою, тому рухається разом із вашими результатами — на відміну від тренувального максимуму, який стоїть на місці, доки ви його не зміните.
А якщо за цією вправою у вас нічого не записано, то й оцінки немає, а отже немає й ваги. Підхід усе одно є — зі своїми повтореннями й відсотком, і чекає, що число впишете ви.
Хто може її проходити
Запуск готової програми входить до платного тарифу, як і читання готового плану з бібліотеки. Програму, яку ви написали самі, читати можна безкоштовно.
З тренувальними максимумами трохи ширше: їх може задати користувач із платним тарифом, а також клієнт, якому програму призначив його тренер. Другий випадок — не лазівка, а саме те, що дозволяє клієнту проходити програму свого тренера, нічого не купуючи.
Джерела
Біля кожного джерела вказано, наскільки глибоко ми з ним працювали. Список посилань показує, що робота існує, а не те, що її хтось відкривав, — тому тут є позначки.
Код, який це рахує
apps/api/src/template/program.service.ts, apps/api/prisma/schema.prisma і apps/flutter/lib/features/workout/domain/template_seeding.dart. Усі числа вище виписані з цих файлів під час збирання сайту, а шість ділянок коду, які пояснює текст, хешуються.
Прочитано повністю
Сама домовленість про тренувальний максимум
Робота від частки числа, нижчого за ваш справжній максимум, — домовленість із відсоткового програмування, а не висновок, на який можна послатися; застосунок ставиться до неї як до значення за замовчуванням в одному необов’язковому помічнику, а не як до правила.
Не прочитано
Загальна інформація про тренування, не медична рекомендація.