Перейти до контенту
Як це працює

Від чого береться відсоток у програмі

Від чого береться відсоток у програмі та звідки це число взагалі з’являється.

Автор: Kiptly ·

На цій сторінці

Відсотків два, і це не те саме

Відсоток — це завжди відсоток від чогось, і в застосунку таких «чогось» два. Який із них перед вами, залежить від того, звідки взявся рядок, і на екрані це зараз ніяк не написано — у цьому й полягає більша частина причини, з якої існує ця сторінка.

У готовій програмі підходи основного руху зберігаються як номер тижня, номер підходу, відсоток, цільова кількість повторень і позначка AMRAP. Відсоток тут — частка від вашого тренувального максимуму: числа, яке ви один раз ввели самі, коли почали програму.

У звичайному шаблоні — вашому власному чи складеному тренером — у вправи замість цільової ваги може стояти цільовий відсоток. Цей відсоток — частка від вашого розрахункового одноповторного максимуму, порахованого за вашими ж записаними підходами формулою Еплі, про яку розповідає сторінка про рекорди.

Тренувальний максимум — це число, яке вводите ви

Його ніщо не виводить, ніщо не оновлює і ніщо не звіряє з тим, що ви насправді піднімаєте. Він зберігається окремо для кожної вправи тієї програми, яку ви проходите, і сервер приймає будь-яке значення від нуля до стелі з таблиці нижче. Вправи, яких у цій програмі немає, він не відхиляє, а мовчки відкидає: у відповіді повернуться збережені максимуми, а решти там просто не буде.

На екрані налаштування є необов’язковий помічник: введіть одноповторний максимум — і він підставить дев’ять десятих від нього, те саме правило, навколо якого зазвичай і написані відсоткові програми. Він спрацьовує лише на ваше прохання, на телефоні, і округлює до десятої частки кілограма. Далі підставлене значення — звичайне число в полі, рівно так, ніби ви ввели його руками.

Суттєве тут те, що тренувальний максимум навмисно не дорівнює вашому найкращому результату. Програми, написані у відсотках, розраховані на робоче число, яке ви візьмете і в поганий день, — звідси й правило, і те, що помічник підставляє значення нижче за ваш максимум, а не рівне йому.

Що застосунок із ним робить

Тренувальний максимум множиться на відсоток, ділиться на сто й округлюється до найближчих 2,5 кг. Це весь розрахунок, він відбувається на сервері, а відсоток їде разом із підходом — тож видно і те, і те.

Чотиритижневий цикл зберігається рядками. У тому, що їде разом із застосунком: перший тиждень — 65, 75 і 85 відсотків по п’ять повторень; другий — 70, 80 і 90 по три; третій — 75, 85 і 95 на п’ять, три й одне. Останній підхід кожного з цих тижнів несе позначку AMRAP — стільки повторень, скільки вийде, а не фіксовану кількість, — і позначка зберігається в кожного підходу, а не виводиться.

Четвертий тиждень — 40, 50 і 60 відсотків по п’ять, без AMRAP: легкий тиждень, записаний у даних самої програми. Виходить, що це третя річ, яку продукт називає розвантаженням, і єдина, яку він не обчислює й не пропонує, — просто наступний тиждень циклу. Двом іншим присвячена окрема сторінка.

Якщо тренувальний максимум для вправи не заданий, підходи все одно прийдуть: відсоток і цільові повторення на місці, а ваги просто немає. Так зроблено навмисно. Вигадати вагу з оцінки, навколо якої програма не писалася, означало б видати здогад за припис.

Числа і де вони лежать

Числа обох шляхів, виписані з API та із застосунку під час збирання сайту. Дільник Еплі тут тому, що другий вид відсотка рахується від формули, а не від введеного вами числа, — це та сама тридцятка, яку публікує сторінка про рекорди.

Що цеЗначенняЗвідки взято
Вага в програмі округлюється до НАЙБЛИЖЧОГО кратного цьому числу, а не вниз.2.5apps/api/src/template/program.service.ts
Що підставляє необов’язковий помічник: таку частку від введеного вами максимуму.0.9apps/flutter/lib/features/programs/presentation/training_max_setup_screen.dart
Найбільший тренувальний максимум, який сервер збереже для однієї вправи.1000apps/api/src/template/dto/set-training-maxes.dto.ts
Тридцятка у формулі Еплі: e1RM = вага × (1 + повторення ÷ 30).30apps/api/src/smart/workout-plan.service.tsapps/api/src/workout/workout.service.ts
Найменший крок у метричній сітці — пара млинців по 1,25 кг.2.5apps/api/src/smart/workout-plan.rules.tsapps/flutter/lib/features/workout/presentation/workout_provider.dart

Другий шлях: відсоток від оцінки

Вправа в шаблоні обирає вагу за суворим порядком, і перемагає перше, що дало відповідь: явно задана цільова вага, далі відсоток, помножений на ваш розрахунковий одноповторний максимум, далі — для вправ із типом «власна вага» — ваша маса тіла, а далі нічого.

Цей розрахунок відбувається на телефоні, у момент складання тренування, і округлюється до цілого кілограма. Він бере найкращу оцінку з вашої історії за цією вправою, тому рухається разом із вашими результатами — на відміну від тренувального максимуму, який стоїть на місці, доки ви його не зміните.

А якщо за цією вправою у вас нічого не записано, то й оцінки немає, а отже немає й ваги. Підхід усе одно є — зі своїми повтореннями й відсотком, і чекає, що число впишете ви.

Хто може її проходити

Запуск готової програми входить до платного тарифу, як і читання готового плану з бібліотеки. Програму, яку ви написали самі, читати можна безкоштовно.

З тренувальними максимумами трохи ширше: їх може задати користувач із платним тарифом, а також клієнт, якому програму призначив його тренер. Другий випадок — не лазівка, а саме те, що дозволяє клієнту проходити програму свого тренера, нічого не купуючи.

Джерела

Біля кожного джерела вказано, наскільки глибоко ми з ним працювали. Список посилань показує, що робота існує, а не те, що її хтось відкривав, — тому тут є позначки.

  1. Код, який це рахує

    apps/api/src/template/program.service.ts, apps/api/prisma/schema.prisma і apps/flutter/lib/features/workout/domain/template_seeding.dart. Усі числа вище виписані з цих файлів під час збирання сайту, а шість ділянок коду, які пояснює текст, хешуються.

    Прочитано повністю

  2. Сама домовленість про тренувальний максимум

    Робота від частки числа, нижчого за ваш справжній максимум, — домовленість із відсоткового програмування, а не висновок, на який можна послатися; застосунок ставиться до неї як до значення за замовчуванням в одному необов’язковому помічнику, а не як до правила.

    Не прочитано

Загальна інформація про тренування, не медична рекомендація.