<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Calcrio</title>
    <description>The latest articles on DEV Community by Calcrio (@calcrio).</description>
    <link>https://dev.to/calcrio</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4186655%2F90d9e0be-d433-48e7-bfbb-965447a634a6.png</url>
      <title>DEV Community: Calcrio</title>
      <link>https://dev.to/calcrio</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/calcrio"/>
    <language>en</language>
    <item>
      <title>Factorials, Explained: Why 0! = 1 and What 52! Really Means</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Fri, 06 Nov 2026 03:36:30 +0000</pubDate>
      <link>https://dev.to/calcrio/factorials-explained-why-0-1-and-what-52-really-means-80b</link>
      <guid>https://dev.to/calcrio/factorials-explained-why-0-1-and-what-52-really-means-80b</guid>
      <description>&lt;p&gt;Shuffle a deck of cards. The order you just created has almost certainly never existed before in the history of the universe — and almost certainly never will again. That is not a magic trick. It is a factorial.&lt;/p&gt;

&lt;p&gt;Factorials look like a notation joke — an exclamation mark doing math — but they are the counting engine behind permutations, combinations, probability, and half of statistics. And they contain two of the best "wait, what?" moments in school math: &lt;strong&gt;0! = 1&lt;/strong&gt;, and &lt;strong&gt;52! ≈ 8.066 × 10^67&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a factorial actually is
&lt;/h2&gt;

&lt;p&gt;The factorial of a whole number n, written n!, is the product of every positive integer from 1 up to n:&lt;/p&gt;

&lt;p&gt;n! = n × (n − 1) × (n − 2) × … × 2 × 1&lt;/p&gt;

&lt;p&gt;So 5! = 5 × 4 × 3 × 2 × 1 = &lt;strong&gt;120&lt;/strong&gt;. Four factorial is 4 × 3 × 2 × 1 = &lt;strong&gt;24&lt;/strong&gt;. Three factorial is &lt;strong&gt;6&lt;/strong&gt;, two factorial is &lt;strong&gt;2&lt;/strong&gt;, and one factorial is &lt;strong&gt;1&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The idea behind the definition is counting arrangements. If you have 5 different books and 5 slots on a shelf, you have 5 choices for the first slot, 4 for the second, 3 for the third, 2 for the fourth, and 1 for the last. Multiply the choices: 5 × 4 × 3 × 2 × 1 = 120 different orders.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why 0! = 1 (the proof that actually convinces people)
&lt;/h2&gt;

&lt;p&gt;Zero factorial is the one that breaks brains. How can multiplying &lt;em&gt;nothing&lt;/em&gt; give 1? There are three proofs, and the third one is the one that ends the argument.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proof 1: the staircase.&lt;/strong&gt; Write the factorials in a column and divide your way down: 4! = 24, 3! = 24 ÷ 4 = 6, 2! = 6 ÷ 3 = 2, 1! = 2 ÷ 2 = 1. Each step divides by the number you just left behind. The next step down is 0! = 1! ÷ 1 = &lt;strong&gt;1&lt;/strong&gt;. The pattern has nowhere else to go — and one more step would divide by zero, which is exactly why (−1)! has no value.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proof 2: the counting argument.&lt;/strong&gt; n! counts the ways to arrange n things. How many ways are there to arrange zero things? Exactly one — the empty arrangement. There is one way to do nothing. So 0! = 1.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proof 3: the empty product.&lt;/strong&gt; Multiplying a list of numbers starts from 1, the multiplicative identity — the number that changes nothing. Multiplying no numbers at all leaves you with 1, just as adding no numbers gives 0. This is the same reason 2^0 = 1. And the formulas demand it: the number of ways to choose all 3 items from 3 is 3! ÷ (3! × 0!), which only gives the correct answer of 1 if 0! = 1.&lt;/p&gt;

&lt;h2&gt;
  
  
  Factorial expressions: cancel before you compute
&lt;/h2&gt;

&lt;p&gt;The most useful factorial skill is simplifying expressions like n!/(n−k)! without expanding everything. The trick is to stop expanding as soon as the terms cancel.&lt;/p&gt;

&lt;p&gt;Take 6!/(6−3)! = 6!/3!. Expand only the top until it meets the bottom:&lt;/p&gt;

&lt;p&gt;6! / 3! = (6 × 5 × 4 × 3 × 2 × 1) / (3 × 2 × 1) = 6 × 5 × 4 = &lt;strong&gt;120&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The 3 × 2 × 1 cancels entirely. That cancellation is not a shortcut — it &lt;em&gt;is&lt;/em&gt; the permutation formula. 6!/(6−3)! counts the ways to arrange 3 items chosen from 6, in order: 6 choices, then 5, then 4. The factorial expression is just the counting argument written compactly.&lt;/p&gt;

&lt;p&gt;The same move handles 7!/4! = 7 × 6 × 5 = &lt;strong&gt;210&lt;/strong&gt;, and 8!/5! = 8 × 7 × 6 = &lt;strong&gt;336&lt;/strong&gt;. Never expand a factorial fully when a smaller factorial sits in the denominator — expand down to it, cancel, and multiply what's left.&lt;/p&gt;

&lt;h2&gt;
  
  
  Permutations vs combinations: order is the whole difference
&lt;/h2&gt;

&lt;p&gt;Factorials power two formulas students constantly mix up, and the difference is one question: &lt;strong&gt;does order matter?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Permutations (nPr) — order matters.&lt;/strong&gt; The number of ways to arrange k items chosen from n, where the order counts:&lt;/p&gt;

&lt;p&gt;nPr = n! / (n − k)!&lt;/p&gt;

&lt;p&gt;For 10P3: 10! / 7! = 10 × 9 × 8 = &lt;strong&gt;720&lt;/strong&gt;. This is a race: 10 runners, 3 medal positions — gold, silver, bronze in that order — gives 720 possible podiums.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Combinations (nCr) — order does not matter.&lt;/strong&gt; The number of ways to choose k items from n, where the order does not count:&lt;/p&gt;

&lt;p&gt;nCr = n! / (k! × (n − k)!)&lt;/p&gt;

&lt;p&gt;For 10C3: 10! / (3! × 7!) = (10 × 9 × 8) / (3 × 2 × 1) = 720 / 6 = &lt;strong&gt;120&lt;/strong&gt;. This is a team: 10 employees, pick any 3 for a project — the same 3 people in a different order is the same team, so you divide by 3! = 6 to remove the duplicate orderings.&lt;/p&gt;

&lt;p&gt;Notice the relationship: 10P3 = 720 is exactly 6 times 10C3 = 120, and 6 is 3! — the number of ways to order the 3 chosen items. If you can remember that one sentence, you will never pick the wrong formula again.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 52! shock — and the comparison that is actually true
&lt;/h2&gt;

&lt;p&gt;Now the big one. A standard deck has 52 cards, and the number of possible orders is 52! = 52 × 51 × 50 × … × 1 ≈ &lt;strong&gt;8.066 × 10^67&lt;/strong&gt;. That is an 8 followed by 67 zeros.&lt;/p&gt;

&lt;p&gt;You will sometimes hear that 52! is "more than the atoms in the observable universe." It is not — the atom count is roughly 10^80, about a trillion times larger. The honest comparison is even more startling in a different direction: the universe is about 13.8 billion years old, which is roughly 4.35 × 10^17 seconds since the Big Bang. 52! is about &lt;strong&gt;1.85 × 10^50 times&lt;/strong&gt; the number of seconds that have ever existed. If you had shuffled a deck once every second since the beginning of time, you would not have scratched the surface of the possible orders.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check it with code
&lt;/h2&gt;

&lt;p&gt;The whole topic in one Python block:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;math&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;perm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;comb&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;    &lt;span class="c1"&gt;# 120
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;    &lt;span class="c1"&gt;# 1 — the empty product
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nf"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;  &lt;span class="c1"&gt;# 120 — the 6!/(6-3)! cancellation
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;perm&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;     &lt;span class="c1"&gt;# 720 — order matters
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;comb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;     &lt;span class="c1"&gt;# 120 — order does not matter
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nf"&gt;factorial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;52&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="si"&gt;:&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="n"&gt;e&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;  &lt;span class="c1"&gt;# 8.066e+67
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;perm&lt;/code&gt; and &lt;code&gt;comb&lt;/code&gt; functions are worth memorizing: &lt;code&gt;perm(n, k)&lt;/code&gt; is n!/(n−k)!, &lt;code&gt;comb(n, k)&lt;/code&gt; is n!/(k!(n−k)!), and the only difference between them is the division by k!.&lt;/p&gt;

&lt;h2&gt;
  
  
  A quick drill
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;7! = 7 × 6 × 5 × 4 × 3 × 2 × 1 = &lt;strong&gt;5,040&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;8!/5! = 8 × 7 × 6 = &lt;strong&gt;336&lt;/strong&gt; (cancel, don't expand).&lt;/li&gt;
&lt;li&gt;8P2 = 8 × 7 = &lt;strong&gt;56&lt;/strong&gt;; 8C2 = 56 / 2 = &lt;strong&gt;28&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;4 people, 4 chairs: 4! = &lt;strong&gt;24&lt;/strong&gt; seating orders.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Want the steps shown instead of just the answers? A free &lt;a href="https://calcrio.com/factorial-calculator/" rel="noopener noreferrer"&gt;factorial calculator&lt;/a&gt; handles all four modes — single factorials, factorial expressions, permutations, and combinations — with the full working displayed. If the 0! result still feels wrong, its &lt;a href="https://calcrio.com/why-is-0-factorial-equal-to-1/" rel="noopener noreferrer"&gt;why is 0 factorial 1&lt;/a&gt; explainer walks through the staircase proof and the empty product, and the permutations mode flags the order-matters check that separates 10P3 = 720 from 10C3 = 120. Once the habit is automatic, this free &lt;a href="https://calcrio.com/factorial-calculator/" rel="noopener noreferrer"&gt;factorial calculator&lt;/a&gt; becomes a 10-second check on your own arithmetic — not a crutch.&lt;/p&gt;

&lt;p&gt;One symbol, three ideas: factorials count arrangements, 0! = 1 keeps the counting consistent, and permutations and combinations are the same formula with order switched on or off. Master that, and the exclamation mark stops looking like a joke — it starts looking like the most honest symbol in math.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How Many Calories Should You Eat? The Mifflin-St Jeor Math, Worked Out by Hand</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Fri, 06 Nov 2026 02:51:31 +0000</pubDate>
      <link>https://dev.to/calcrio/how-many-calories-should-you-eat-the-mifflin-st-jeor-math-worked-out-by-hand-2k95</link>
      <guid>https://dev.to/calcrio/how-many-calories-should-you-eat-the-mifflin-st-jeor-math-worked-out-by-hand-2k95</guid>
      <description>&lt;p&gt;"How many calories should I eat?" is the most-searched nutrition question on the internet — and it is also a math question. Behind every calorie target sits one formula, the Mifflin-St Jeor equation, plus one multiplier for how active you are. Here is the whole calculation, worked out by hand, so you can check any number an app gives you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Your BMR — What You Burn Doing Nothing
&lt;/h2&gt;

&lt;p&gt;Your basal metabolic rate (BMR) is the energy your body needs just to stay alive: breathing, keeping warm, running your organs. The Mifflin-St Jeor equation, the version dietitians use most, is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Women: BMR = 10 × weight (kg) + 6.25 × height (cm) − 5 × age − 161&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Men: BMR = 10 × weight (kg) + 6.25 × height (cm) − 5 × age + 5&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Notice the only difference between the two formulas is the final constant: −161 for women, +5 for men. Everything else — weight, height, age — works the same way.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example: A 30-Year-Old Woman
&lt;/h2&gt;

&lt;p&gt;Take a woman who is 30 years old, weighs 70 kg, and is 165 cm tall.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Weight term: 10 × 70 = &lt;strong&gt;700&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Height term: 6.25 × 165 = &lt;strong&gt;1,031.25&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Age term: 5 × 30 = &lt;strong&gt;150&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Put it together: 700 + 1,031.25 − 150 − 161 = &lt;strong&gt;1,420.25&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Her BMR is about &lt;strong&gt;1,420 calories per day&lt;/strong&gt;. That is what her body burns lying still all day — before a single step, chore, or workout.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Your TDEE — BMR × Activity
&lt;/h2&gt;

&lt;p&gt;Nobody lies still all day, so BMR is only half the answer. Total daily energy expenditure (TDEE) multiplies BMR by an activity factor:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Lifestyle&lt;/th&gt;
&lt;th&gt;Factor&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Sedentary (desk job, little exercise)&lt;/td&gt;
&lt;td&gt;1.2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Lightly active (light exercise 1–3 days/week)&lt;/td&gt;
&lt;td&gt;1.375&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Moderately active (moderate exercise 3–5 days/week)&lt;/td&gt;
&lt;td&gt;1.55&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Very active (hard exercise 6–7 days/week)&lt;/td&gt;
&lt;td&gt;1.725&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Extremely active (physical job + training)&lt;/td&gt;
&lt;td&gt;1.9&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Our example woman exercises moderately, so her factor is 1.55:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TDEE = 1,420.25 × 1.55 = 2,201 calories per day&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That 2,201 is her maintenance level: eat that much, and her weight stays roughly the same.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Calories to Lose Weight
&lt;/h2&gt;

&lt;p&gt;Weight loss is a deficit: eat less than your TDEE. The standard, sustainable deficit is 500 calories a day, which adds up to 3,500 calories a week — roughly 0.45 kg (1 lb) of body fat per week.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Target = 2,201 − 500 = 1,701 calories per day&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So her weight-loss target is about &lt;strong&gt;1,700 calories a day&lt;/strong&gt;. Not 1,200, not 2,500 — 1,700, derived from her own numbers. Skip the arithmetic anytime with the free &lt;a href="https://calcrio.com/calorie-calculator-to-lose-weight/" rel="noopener noreferrer"&gt;calorie calculator&lt;/a&gt; — it runs the same Mifflin-St Jeor math and lets you test different activity levels instantly.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Second Example, to Prove the Pattern
&lt;/h2&gt;

&lt;p&gt;Take a 35-year-old man, 80 kg, 180 cm, lightly active (1.375):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;BMR = 10 × 80 + 6.25 × 180 − 5 × 35 + 5 = 800 + 1,125 − 175 + 5 = &lt;strong&gt;1,755&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;TDEE = 1,755 × 1.375 = &lt;strong&gt;2,413&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Weight-loss target = 2,413 − 500 = &lt;strong&gt;1,913 calories per day&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Same formula, same three steps, different person, different answer. That is the whole point: there is no universal calorie number, only your number.&lt;/p&gt;

&lt;h2&gt;
  
  
  5 Mistakes That Break the Calculation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Using pounds and inches in the formula.&lt;/strong&gt; Mifflin-St Jeor needs kilograms and centimetres. 154 lb is 70 kg; 5 ft 5 in is 165 cm. Convert first.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Picking the wrong activity factor.&lt;/strong&gt; Most people overestimate — a desk job with three gym sessions is "moderately active" (1.55), not "very active" (1.725).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Confusing BMR with TDEE.&lt;/strong&gt; BMR is your floor, not your target. Eating at BMR while exercising daily is an accidental crash diet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cutting more than 500 calories.&lt;/strong&gt; A 1,000-calorie deficit sounds faster, but it is hard to sustain and usually costs muscle along with fat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Forgetting the target moves.&lt;/strong&gt; Lose 5 kg and your BMR drops — recalculate every few weeks, or your deficit quietly disappears.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Why 500? The 3,500-Calorie Rule
&lt;/h2&gt;

&lt;p&gt;The 500-calorie deficit is not arbitrary. One pound of body fat stores roughly 3,500 calories of energy, so a daily deficit of 500 calories adds up to 3,500 over a week — about 0.45 kg (1 lb) lost per week. That pace matters: faster loss usually means losing muscle alongside fat, and crash deficits are the ones people abandon. A 300-calorie deficit works too, just slower (about 0.27 kg a week); a 750-calorie deficit is faster but harder to sustain and only sensible for people with a lot to lose. The formula stays the same either way — only the final subtraction changes. Pick the deficit you can actually live with for months, because consistency beats intensity here.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Often Should You Recalculate?
&lt;/h2&gt;

&lt;p&gt;Your target is not permanent. Lose 5 kg and your BMR drops, because a lighter body burns less energy just existing. Our example woman at 65 kg instead of 70 kg: BMR = 700 − 50 = 1,370.25 (the weight term falls by 50), TDEE = 1,370.25 × 1.55 = 2,124, and her new target is 1,624 — about 77 calories lower than before. Recalculate every 4–6 weeks, or every time you lose 5 kg, or your deficit quietly shrinks to nothing and progress stalls for no visible reason. This is also why "eat 1,700 calories forever" fails: the number that worked in January is not the number that works in June.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Bottom Line
&lt;/h2&gt;

&lt;p&gt;"How many calories should I eat" has a real answer, and it is three steps: BMR from Mifflin-St Jeor, TDEE from your activity factor, then minus 500 for steady weight loss. Do it once by hand and no app's number will ever look like magic again. For the instant version, use the free &lt;a href="https://calcrio.com/calorie-calculator-to-lose-weight/" rel="noopener noreferrer"&gt;calorie calculator&lt;/a&gt; — and if you want to know &lt;a href="https://calcrio.com/calorie-calculator-to-lose-weight/" rel="noopener noreferrer"&gt;how many calories should i eat&lt;/a&gt; at a different activity level, just change the factor and watch the target move.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>BMI, Explained: The Math Behind Your Body Mass Index (and the 703 You Keep Seeing)</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Thu, 05 Nov 2026 10:37:08 +0000</pubDate>
      <link>https://dev.to/calcrio/bmi-explained-the-math-behind-your-body-mass-index-and-the-703-you-keep-seeing-5e5i</link>
      <guid>https://dev.to/calcrio/bmi-explained-the-math-behind-your-body-mass-index-and-the-703-you-keep-seeing-5e5i</guid>
      <description>&lt;p&gt;BMI is one division problem. Weight divided by height squared. That's it — and yet almost everyone gets the units wrong the first time.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Formula
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Metric:&lt;/strong&gt; BMI = weight (kg) ÷ height (m)²&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Imperial:&lt;/strong&gt; BMI = 703 × weight (lb) ÷ height (in)²&lt;/p&gt;

&lt;p&gt;The 703 is not a fudge factor. It converts pounds per square inch into kilograms per square metre (0.4536 ÷ 0.0254² ≈ 703.07). Both formulas give the same answer for the same person, because 703 is just the unit-conversion constant that makes imperial units behave like metric ones.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Examples
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Metric:&lt;/strong&gt; 70 kg, 1.75 m → 1.75 × 1.75 = 3.0625 → 70 ÷ 3.0625 = &lt;strong&gt;22.9&lt;/strong&gt; (healthy).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Imperial:&lt;/strong&gt; 150 lb, 5 ft 7 in (67 in) → 150 × 703 = 105,450 → 67² = 4,489 → 105,450 ÷ 4,489 = &lt;strong&gt;23.5&lt;/strong&gt; (healthy).&lt;/p&gt;

&lt;h2&gt;
  
  
  What the Number Means
&lt;/h2&gt;

&lt;p&gt;The CDC categories for adults 20 and older: below 18.5 underweight, 18.5–24.9 healthy weight, 25.0–29.9 overweight, 30.0 and above obesity. The same bands apply to men and women at every adult age. They are screening bands, not a health verdict — but they are the bands every doctor, insurer, and health app is using when they quote your BMI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Your Healthy Weight Range
&lt;/h2&gt;

&lt;p&gt;Run the formula backward: weight = BMI × height². At 5 ft 9 in, BMI 18.5 is 125 lb and BMI 24.9 is 169 lb — a healthy range of 125–169 lb. Try the free &lt;a href="https://calcrio.com/bmi-calculator/" rel="noopener noreferrer"&gt;BMI calculator&lt;/a&gt; to find your own range instantly.&lt;/p&gt;

&lt;h2&gt;
  
  
  5 Mistakes to Avoid
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Forgetting to square your height.&lt;/li&gt;
&lt;li&gt;Using centimetres instead of metres.&lt;/li&gt;
&lt;li&gt;Using 703 with kilograms.&lt;/li&gt;
&lt;li&gt;Entering 5 ft 9 in as 5.9 feet — it is 69 inches.&lt;/li&gt;
&lt;li&gt;Rounding in the middle of the calculation.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Trap
&lt;/h2&gt;

&lt;p&gt;BMI is a screening tool, not a diagnosis. It does not distinguish muscle from fat — a muscular athlete can score 25.5 while carrying very little body fat. It also ignores where fat is carried: waist circumference matters too (elevated risk above 40 inches for men, 35 inches for women). And for ages 2–19, the CDC uses BMI-for-age percentiles, not these adult cutoffs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bottom Line
&lt;/h2&gt;

&lt;p&gt;BMI is one division problem, and doing it by hand once is worth it: the formula stops being a mystery. For the full step-by-step guide, see &lt;a href="https://calcrio.com/how-to-calculate-bmi-step-by-step/" rel="noopener noreferrer"&gt;how to calculate BMI&lt;/a&gt; — or skip the arithmetic and use the free &lt;a href="https://calcrio.com/bmi-calculator/" rel="noopener noreferrer"&gt;BMI calculator&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>bmi</category>
      <category>health</category>
      <category>math</category>
      <category>calculator</category>
    </item>
    <item>
      <title>Ratios, Explained: The Math Behind Simplifying, Proportions, and the 12:18 Trap</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Thu, 05 Nov 2026 03:15:31 +0000</pubDate>
      <link>https://dev.to/calcrio/ratios-explained-the-math-behind-simplifying-proportions-and-the-1218-trap-p85</link>
      <guid>https://dev.to/calcrio/ratios-explained-the-math-behind-simplifying-proportions-and-the-1218-trap-p85</guid>
      <description>&lt;p&gt;A recipe calls for flour and water in the ratio 1:4, and you're using 3 cups of flour. Quick — how much water?&lt;/p&gt;

&lt;p&gt;If you answered &lt;strong&gt;12 cups&lt;/strong&gt;, you just solved a proportion. If you hesitated, you're in the same boat as the student who answered &lt;strong&gt;9&lt;/strong&gt; to this one: &lt;em&gt;12:18 = ?:9, find the missing term.&lt;/em&gt; The most common wrong answers are 9 (guessing) and 27 (scaling 9 up by 3 — the trap answer). The correct answer is &lt;strong&gt;6&lt;/strong&gt;, and the reason so many people miss it reveals the one idea that makes all ratio math click: &lt;strong&gt;a ratio is a fraction in disguise&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a ratio really is
&lt;/h2&gt;

&lt;p&gt;The ratio 12:18 reads "12 to 18," but mathematically it means exactly the fraction 12/18. Every ratio operation is a fraction operation wearing different clothes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Simplifying a ratio&lt;/strong&gt; = reducing the fraction to lowest terms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Solving a proportion&lt;/strong&gt; = setting two fractions equal and cross-multiplying.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scaling a ratio&lt;/strong&gt; = multiplying the fraction top and bottom by the same number.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ratio to percent&lt;/strong&gt; = converting the fraction to a decimal, then × 100.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once you see the disguise, ratio problems stop being a separate topic and become fraction problems you already know how to do.&lt;/p&gt;

&lt;h2&gt;
  
  
  Simplifying: divide by the GCD
&lt;/h2&gt;

&lt;p&gt;To simplify 12:18, find the greatest common divisor of 12 and 18. The divisors of 12 are 1, 2, 3, 4, 6, 12; of 18 are 1, 2, 3, 6, 9, 18. The largest shared divisor is &lt;strong&gt;6&lt;/strong&gt;, so:&lt;/p&gt;

&lt;p&gt;12 ÷ 6 : 18 ÷ 6 = &lt;strong&gt;2:3&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's it. If the GCD is 1, the ratio is already in simplest form. The trap answer to the recipe question is to scale the wrong way — but the proportion below shows the &lt;em&gt;real&lt;/em&gt; trap.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 12:18 trap: solving a proportion
&lt;/h2&gt;

&lt;p&gt;12:18 = ?:9. Written as fractions: 12/18 = ?/9. Cross-multiply:&lt;/p&gt;

&lt;p&gt;? = (12 × 9) / 18 = 108 / 18 = &lt;strong&gt;6&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The trap answer is 27: people see the 9 and scale it &lt;em&gt;up&lt;/em&gt; by 3 (as if 18 → 9 were an upscale) instead of seeing that 18 &lt;em&gt;shrank&lt;/em&gt; to 9 — a division by 2, so 12 becomes 6. The defensive habit: &lt;strong&gt;say which direction the known numbers moved before touching the unknown&lt;/strong&gt;. Here 18 became 9 — it halved. So 12 halves to 6. Do that check every time and the trap loses its power.&lt;/p&gt;

&lt;p&gt;Notice the two problems are related: since 12:18 simplifies to 2:3, the proportion is also 2:3 = ?:9, and 3 × 3 = 9 means 2 × 3 = 6. Simplifying first is a legitimate shortcut — fewer big numbers, same answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Scaling: multiply both parts equally
&lt;/h2&gt;

&lt;p&gt;Scaling 2:3 by a factor of 5: multiply &lt;em&gt;both&lt;/em&gt; terms by 5 → &lt;strong&gt;10:15&lt;/strong&gt;. This is the recipe operation: 1:4 with 3 cups of flour means multiply both terms by 3 → 3 cups flour to &lt;strong&gt;12 cups water&lt;/strong&gt;. (Python check: 3 × 4 = 12.)&lt;/p&gt;

&lt;p&gt;The classic error is scaling only one term — doubling the flour without doubling the water ruins the recipe and the math. If you scaled 2:3 to 4:3, you've changed the value: 4/3 ≈ 1.33 while 2/3 ≈ 0.67. Scaling must preserve the fraction's value, which only multiplying both parts does.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ratios to fractions and percents
&lt;/h2&gt;

&lt;p&gt;2:3 means the fraction 2/(2+3) = 2/5 of the whole for the first part and 3/5 for the second. As percents:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First part: 2/5 = 0.4 = &lt;strong&gt;40%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Second part: 3/5 = 0.6 = &lt;strong&gt;60%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(Python check: 2/5 × 100 = 40.0, 3/5 × 100 = 60.0.) And 2:3 of 25 items splits as 25 × 2/5 = &lt;strong&gt;10&lt;/strong&gt; and 25 × 3/5 = &lt;strong&gt;15&lt;/strong&gt; (check: 10 + 15 = 25). This is where ratios meet everyday math: mixing paint, splitting a bill, converting odds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check it with code
&lt;/h2&gt;

&lt;p&gt;The whole topic in one Python block:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;math&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;gcd&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;simplify&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;g&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;gcd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;g&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;g&lt;/span&gt;          &lt;span class="c1"&gt;# 12, 18 -&amp;gt; (2, 3)
&lt;/span&gt;
&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;missing_term&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;d&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;d&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;              &lt;span class="c1"&gt;# 12, 18, 9 -&amp;gt; 6.0 (the trap answer, dodged)
&lt;/span&gt;
&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;factor&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;factor&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;factor&lt;/span&gt;  &lt;span class="c1"&gt;# 2, 3, 5 -&amp;gt; (10, 15)
&lt;/span&gt;
&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;ratio_percent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;  &lt;span class="c1"&gt;# 2, 3 -&amp;gt; (40.0, 60.0)
&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;simplify&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;18&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;        &lt;span class="c1"&gt;# (2, 3)
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;missing_term&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;18&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="c1"&gt;# 6.0 — not 27
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;          &lt;span class="c1"&gt;# (10, 15)
&lt;/span&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;ratio_percent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;     &lt;span class="c1"&gt;# (40.0, 60.0)
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;missing_term&lt;/code&gt; function is worth memorizing: &lt;code&gt;a * d / b&lt;/code&gt; is the cross-multiplication formula, and seeing it as code makes the "direction check" explicit — you're dividing by the term that &lt;em&gt;shrunk&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  A quick drill
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Simplify 20:28 → divide by GCD 4 → &lt;strong&gt;5:7&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;4:10 = ?:25 → ? = (4 × 25)/10 = &lt;strong&gt;10&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Scale 5:7 by 3 → &lt;strong&gt;15:21&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;5:7 as percents → 5/12 ≈ &lt;strong&gt;41.7%&lt;/strong&gt;, 7/12 ≈ &lt;strong&gt;58.3%&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Want the steps shown instead of just the answers? A free &lt;a href="https://calcrio.com/ratio-calculator/" rel="noopener noreferrer"&gt;ratio calculator&lt;/a&gt; handles all four modes — simplifying, missing-term proportions, scaling, and ratio-to-percent conversion — with the full working displayed. If you're still building the habit, its &lt;a href="https://calcrio.com/ratio-calculator/" rel="noopener noreferrer"&gt;how to simplify ratios&lt;/a&gt; mode shows the GCD step explicitly, and the proportion mode flags the direction check that defeats the 12:18 trap. Either way, once the habit is automatic, this free &lt;a href="https://calcrio.com/ratio-calculator/" rel="noopener noreferrer"&gt;ratio calculator&lt;/a&gt; becomes a 10-second check on your own arithmetic — not a crutch.&lt;/p&gt;

&lt;p&gt;One ratio, four operations, zero new concepts: it's fractions all the way down. Master the disguise and every ratio problem — recipes, mixing ratios, exam proportions — collapses into arithmetic you already trust.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Fantasy Football Trades, Explained: The Math Behind Fair Deals</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Wed, 04 Nov 2026 03:40:09 +0000</pubDate>
      <link>https://dev.to/calcrio/fantasy-football-trades-explained-the-math-behind-fair-deals-c3l</link>
      <guid>https://dev.to/calcrio/fantasy-football-trades-explained-the-math-behind-fair-deals-c3l</guid>
      <description>&lt;p&gt;Every fantasy manager has two trade stories: the "fair" deal that won the league, and the "steal" that quietly destroyed it. The difference between them is rarely instinct. It's arithmetic. Behind every good trade verdict sits the same simple calculation — and once you can do it yourself, you'll never accept or reject a trade on gut feel again.&lt;/p&gt;

&lt;h2&gt;
  
  
  The One Calculation Behind Every Verdict
&lt;/h2&gt;

&lt;p&gt;Every fantasy trade calculator works the same way under the hood:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Assign a number to every player.&lt;/strong&gt; Expert rankings, crowdsourced votes (KeepTradeCut builds its values from over 27 million community data points), or real completed trades from live leagues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sum each side.&lt;/strong&gt; Add up everything Team A sends and everything Team B sends.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compare.&lt;/strong&gt; The gap between the two totals decides the verdict.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Worked Example: The 9.3% Trade
&lt;/h2&gt;

&lt;p&gt;You're offered a deal. You give up a wide receiver valued at 7,400 plus a running back valued at 4,300 — your package totals 11,700. In return you get a running back valued at 12,900.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gap = (12,900 − 11,700) ÷ 12,900 = 1,200 ÷ 12,900 = &lt;strong&gt;9.3%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One common scoring system reads percentage gaps like this:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Gap&lt;/th&gt;
&lt;th&gt;Verdict&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Under 5%&lt;/td&gt;
&lt;td&gt;Even&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5–15%&lt;/td&gt;
&lt;td&gt;Slight edge&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;15–30%&lt;/td&gt;
&lt;td&gt;Clear winner&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30%+&lt;/td&gt;
&lt;td&gt;Lopsided&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;So 9.3% is a &lt;strong&gt;slight edge&lt;/strong&gt; to the side receiving the 12,900 player. It's not a fleece — a deal within roughly 5–10% is generally considered fair — but if you're the one giving up the 11,700 package, you know exactly what to ask for as a throw-in: about 1,200 points of value to close it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 2-for-1 Trap
&lt;/h2&gt;

&lt;p&gt;Here's where raw math misleads people. Two mid-tier players often outscore one star on combined points — but you can only start one player per roster slot. The star frees a roster spot and consolidates production, which is why good calculators apply a &lt;strong&gt;consolidation premium&lt;/strong&gt; to the single-player side of 2-for-1 deals.&lt;/p&gt;

&lt;p&gt;The lesson: never compare a 2-for-1 on total points alone. The team receiving one player is also receiving a free roster spot, and roster spots have real value.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dynasty Is a Different Sport
&lt;/h2&gt;

&lt;p&gt;In redraft leagues, values are driven by rest-of-season projections — this year, nothing else. Dynasty leagues never reset, so values are driven by &lt;strong&gt;age, role, and years of value remaining&lt;/strong&gt;. A 24-year-old receiver and a 30-year-old receiver might score similarly this season, but the 24-year-old is worth far more in dynasty.&lt;/p&gt;

&lt;p&gt;Draft picks are the other currency. A rough dynasty framework:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Pick&lt;/th&gt;
&lt;th&gt;Typical equivalent&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2026 1st (1.01)&lt;/td&gt;
&lt;td&gt;Young elite WR/RB starter&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2026 1st (1.05–1.08)&lt;/td&gt;
&lt;td&gt;Solid young starter&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2026 1st (1.09–1.12)&lt;/td&gt;
&lt;td&gt;Mid-tier young player&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2026 2nd (early)&lt;/td&gt;
&lt;td&gt;Solid backup / young depth&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2026 2nd (late)&lt;/td&gt;
&lt;td&gt;Depth piece&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3rd round +&lt;/td&gt;
&lt;td&gt;Roster filler&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Also set your team mode: a contender happily trades a future first for a proven veteran, while a rebuilder should demand youth and picks. The same trade can be "fair" in contender mode and "you lose" in rebuilder mode.&lt;/p&gt;

&lt;h2&gt;
  
  
  Format Changes Everything
&lt;/h2&gt;

&lt;p&gt;The same players, the same trade — a different verdict. That's not a bug; it's the scoring format:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;PPR&lt;/strong&gt; boosts pass-catching receivers and backs; &lt;strong&gt;standard&lt;/strong&gt; boosts goal-line runners.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Superflex / 2QB&lt;/strong&gt; makes quarterbacks 2–3x more valuable — a second QB becomes a starter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TE premium&lt;/strong&gt; lifts elite tight ends toward WR1 value.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Always set your scoring format &lt;em&gt;before&lt;/em&gt; running the numbers. A PPR verdict means nothing in a standard league.&lt;/p&gt;

&lt;h2&gt;
  
  
  When to Override the Calculator
&lt;/h2&gt;

&lt;p&gt;Calculators grade on value, but leagues are won on context. Override the verdict when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Your roster construction demands it.&lt;/strong&gt; The calculator says you lose by 8%, but you're trading your fourth RB for your first starting TE — positional scarcity beats raw points.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The playoff schedule says otherwise.&lt;/strong&gt; A player with a soft Weeks 15–17 schedule is worth more to a contender than his rest-of-season average suggests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Injury news just broke.&lt;/strong&gt; Values lag reality by hours; if a starter just went down, the handcuff's value spiked before any calculator updated.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It's a dynasty rebuild.&lt;/strong&gt; Trading a 29-year-old star for a 22-year-old and a first looks like a loss on this year's points and a win on the next five.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use the calculator as your starting bid, not your final answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 30-Second Summary
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Every trade verdict = sum both sides, compare the gap.&lt;/li&gt;
&lt;li&gt;Under 5% is even, 5–15% a slight edge, 15–30% a clear winner, 30%+ lopsided.&lt;/li&gt;
&lt;li&gt;2-for-1s need a consolidation premium — roster spots have value.&lt;/li&gt;
&lt;li&gt;Dynasty trades on age and picks, not just this season's points.&lt;/li&gt;
&lt;li&gt;Set your format (PPR/standard/superflex) before you trust any verdict.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before your next accept-or-reject, run the deal through a free &lt;a href="https://calcrio.com/fantasy-trade-calculator/" rel="noopener noreferrer"&gt;fantasy trade calculator&lt;/a&gt; — redraft, dynasty, keeper, PPR, standard and superflex, with the gap math shown so you can see exactly why a trade is fair or a fleece. Your gut will thank you for the backup, and a good &lt;a href="https://calcrio.com/fantasy-trade-calculator/" rel="noopener noreferrer"&gt;fantasy trade calculator&lt;/a&gt; makes the 30-second check a habit instead of a chore.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Slope, Explained: The Math Behind Rise Over Run (and the Trap 99% Fall Into)</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Wed, 04 Nov 2026 03:33:56 +0000</pubDate>
      <link>https://dev.to/calcrio/slope-explained-the-math-behind-rise-over-run-and-the-trap-99-fall-into-gmn</link>
      <guid>https://dev.to/calcrio/slope-explained-the-math-behind-rise-over-run-and-the-trap-99-fall-into-gmn</guid>
      <description>&lt;p&gt;Take two points: (2, 3) and (6, 11). The slope between them is &lt;strong&gt;2&lt;/strong&gt;. Now, most people who get this question wrong arrive at &lt;strong&gt;1/2&lt;/strong&gt; — confidently, every time. They are not bad at math. They fell into the single most reliable trap in algebra: they computed &lt;em&gt;run over rise&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Slope is the measure of a line's steepness, and it governs everything from staircase codes to rocket trajectories. But the definition students memorize — "rise over run" — is exactly what betrays them, because under exam pressure "rise" and "run" swap places with ease. Let's build the concept from scratch, with the trap included.&lt;/p&gt;

&lt;h2&gt;
  
  
  The formula: slope = rise / run
&lt;/h2&gt;

&lt;p&gt;For two points (x₁, y₁) and (x₂, y₂):&lt;/p&gt;

&lt;p&gt;m = (y₂ − y₁) / (x₂ − x₁)&lt;/p&gt;

&lt;p&gt;The numerator is the &lt;strong&gt;rise&lt;/strong&gt; — how far the line climbs (or falls) vertically. The denominator is the &lt;strong&gt;run&lt;/strong&gt; — how far it travels horizontally. Order matters, and subtraction order is &lt;em&gt;irrelevant&lt;/em&gt; as long as it is consistent: (11 − 3)/(6 − 2) = 8/4 = &lt;strong&gt;2&lt;/strong&gt;, and equally (3 − 11)/(2 − 6) = (−8)/(−4) = &lt;strong&gt;2&lt;/strong&gt;. The two negatives cancel — a detail worth pausing on, because it is the first place the trap sets its hook.&lt;/p&gt;

&lt;p&gt;Now the trap: flip the fraction and compute (6 − 2)/(11 − 3) = 4/8 = &lt;strong&gt;1/2&lt;/strong&gt;. That is run over rise — the reciprocal. It describes a &lt;em&gt;different line entirely&lt;/em&gt;: the gentle slope 1/2 instead of the steep slope 2. Same points, same numbers, wrong meaning. The mnemonic is not "y changes, x changes" but specifically &lt;strong&gt;vertical change first, horizontal change second&lt;/strong&gt;. When in doubt, say it aloud: "rise over run — up over across."&lt;/p&gt;

&lt;h2&gt;
  
  
  The four forms the tool handles
&lt;/h2&gt;

&lt;p&gt;Slope rarely appears as just a number. The free &lt;a href="https://calcrio.com/slope-calculator/" rel="noopener noreferrer"&gt;slope calculator&lt;/a&gt; at calcrio.com works in four modes, and each one shows up in real coursework:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Slope from two points.&lt;/strong&gt; The core mode: enter (2, 3) and (6, 11), get m = 2 with the full rise/run breakdown. This is where the trap lives, so the working is shown step by step.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Slope-intercept form (y = mx + b).&lt;/strong&gt; Given y = 2x − 1, the slope is the coefficient of x — read straight off, m = 2, with y-intercept −1. This is the form where students must &lt;em&gt;not&lt;/em&gt; divide anything; the answer is already sitting in the equation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Point-slope form (y − y₁ = m(x − x₁)).&lt;/strong&gt; From point (2, 3) and m = 2: y − 3 = 2(x − 2), which expands to y = 2x − 1. Plug x = 6 into either form and you get y = 11 — the built-in self-check that the line really passes through both points.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Parallel and perpendicular slopes.&lt;/strong&gt; A line parallel to ours also has m = 2 (same steepness, never meeting); a line perpendicular to ours has m = −1/2, the &lt;em&gt;negative reciprocal&lt;/em&gt; (2 × −1/2 = −1). This is the one place where computing a reciprocal is actually correct — which is exactly why it confuses people who already mix up rise and run.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Checking it with code
&lt;/h2&gt;

&lt;p&gt;If you're the type who trusts nothing until it runs, here's the whole trap in JavaScript:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;x1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;y1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;x2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;y2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;rise&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;y2&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;y1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;   &lt;span class="c1"&gt;// 8&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;run&lt;/span&gt;  &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;x2&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;x1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;   &lt;span class="c1"&gt;// 4&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;slope&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;rise&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;run&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="c1"&gt;// 2 ✓ (rise OVER run)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;trap&lt;/span&gt;  &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;run&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;rise&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="c1"&gt;// 0.5 □ (run over rise – the trap)&lt;/span&gt;

&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`slope = &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;slope&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;, trap answer = &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;trap&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="c1"&gt;// slope = 2, trap answer = 0.5&lt;/span&gt;

&lt;span class="c1"&gt;// and the perpendicular check:&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;slope&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="nx"&gt;slope&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;  &lt;span class="c1"&gt;// -1 ✓ (perpendicular lines satisfy m1·m2 = -1)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The last line is the sanity check for the perpendicular mode: two slopes multiply to −1. Here 2 × (−1/2) = −1 exactly. If your perpendicular answer doesn't satisfy this, the reciprocal got applied twice or not at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  A quick drill
&lt;/h2&gt;

&lt;p&gt;Work these by hand, then check yourself:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;(1, 5) and (4, 14): rise 9, run 3 → m = &lt;strong&gt;3&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;y = −x + 7: slope reads straight off → m = &lt;strong&gt;−1&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;A line with m = 4; its perpendicular has m = &lt;strong&gt;−1/4&lt;/strong&gt; (negative reciprocal).&lt;/li&gt;
&lt;li&gt;3x + 4y = 12: rearrange to y = −(3/4)x + 3 → m = &lt;strong&gt;−3/4&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The best way to internalize slope is to drill it — and to let the trap catch you in practice rather than on the test. The free &lt;a href="https://calcrio.com/slope-calculator/" rel="noopener noreferrer"&gt;slope calculator&lt;/a&gt; shows the full working for two-point problems, converts between slope-intercept and point-slope form, verifies perpendicular answers with the m₁·m₂ = −1 check. If you're still building the habit, its &lt;a href="https://calcrio.com/slope-calculator/" rel="noopener noreferrer"&gt;how to find the slope of a line&lt;/a&gt; mode walks the rise/run order one explicit step at a time.&lt;/p&gt;

&lt;p&gt;So: (2, 3) to (6, 11), rise 8, run 4, slope &lt;strong&gt;2&lt;/strong&gt;. Say the order out loud — vertical first, horizontal second — and the trap loses its power forever.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Palworld Breeding, Explained: Combos, Passives, and the Egg Math</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Wed, 04 Nov 2026 03:32:23 +0000</pubDate>
      <link>https://dev.to/calcrio/palworld-breeding-explained-combos-passives-and-the-egg-math-423h</link>
      <guid>https://dev.to/calcrio/palworld-breeding-explained-combos-passives-and-the-egg-math-423h</guid>
      <description>&lt;p&gt;Every Palworld breeding guide shows you a giant chart of parent pairs. Charts are useful, but they hide something better: the game itself doesn't use a chart. Every egg in Palworld is decided by &lt;strong&gt;one formula, plus a list of exceptions&lt;/strong&gt;. Once you know both, you can predict results no chart lists — and stop wasting cake on pairings that were never going to work.&lt;/p&gt;

&lt;h2&gt;
  
  
  The One Formula Behind Every Egg
&lt;/h2&gt;

&lt;p&gt;Each Pal species carries a hidden number called its &lt;strong&gt;breeding power&lt;/strong&gt; (CombiRank in the game files). It ranges from 20 for the rarest legendaries up to about 3,100 for the most common starters (Chikipi sits at 3,080). The game never shows you this number — which is exactly why breeding calculators exist.&lt;/p&gt;

&lt;p&gt;For an ordinary pair, the child is decided like this:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;child target = floor((parent A rank + parent B rank + 1) ÷ 2)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The egg then hatches into whichever breedable Pal's own rank sits closest to that target. If two candidates tie, an internal priority order picks the winner.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example: Lamball + Penking = Nitewing
&lt;/h2&gt;

&lt;p&gt;Take two real, game-extracted values: Lamball has breeding power &lt;strong&gt;3050&lt;/strong&gt;, Penking has &lt;strong&gt;2070&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Target = floor((3050 + 2070 + 1) ÷ 2) = floor(5121 ÷ 2) = &lt;strong&gt;2560&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Nitewing's breeding power is exactly &lt;strong&gt;2560&lt;/strong&gt; — so this pair hatches Nitewing, every time.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One consequence players constantly miss: because the result is an &lt;em&gt;average&lt;/em&gt;, you can never breed something rarer than your rarest parent. Two mid-game Pals average into a mid-game egg. That's why breeding chains exist — you work &lt;em&gt;downward&lt;/em&gt; through generations toward the target instead of expecting one lucky pairing to jump the queue.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Exceptions That Override the Math
&lt;/h2&gt;

&lt;p&gt;Roughly 160 hand-authored &lt;strong&gt;special combinations&lt;/strong&gt; ignore the formula entirely and produce a fixed child. Same-species pairs also breed true — two Anubis always make Anubis, which is how you farm passives without changing species. And about 28 Pals (legendaries, raid bosses, tower bosses) sit outside the formula completely; the only way to get most of them is an exact predetermined pairing.&lt;/p&gt;

&lt;p&gt;Known special combinations from the current 1.0 dataset include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Relaxaurus + Sparkit → &lt;strong&gt;Relaxaurus Lux&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Incineram + Maraith → &lt;strong&gt;Incineram Noct&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Mau + Pengullet → &lt;strong&gt;Mau Cryst&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Vanwyrm + Foxcicle → &lt;strong&gt;Vanwyrm Cryst&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Frostallion + Helzephyr → &lt;strong&gt;Frostallion Noct&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Jormuntide + Blazehowl → &lt;strong&gt;Jormuntide Ignis&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the classic calculator trap: a tool that only averages ranks will get every one of these wrong. A good &lt;a href="https://calcrio.com/palworld-breeding-calculator/" rel="noopener noreferrer"&gt;palworld breeding calculator&lt;/a&gt; checks special combinations &lt;em&gt;first&lt;/em&gt;, then same-species behavior, then the rank formula — in that order.&lt;/p&gt;

&lt;h2&gt;
  
  
  Famous Combos, Verified
&lt;/h2&gt;

&lt;p&gt;A few of the most-searched breeding targets and the parent pairs the community has confirmed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Anubis&lt;/strong&gt; = Penking + Bushi — the early-game powerhouse (Level 4 Handiwork, Level 3 Mining). You can breed it as soon as you unlock the Breeding Farm at Technology Level 19, long before you'd ever catch one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Orserk&lt;/strong&gt; = Grizzbolt + Relaxaurus — Level 4 Generating Electricity, the premier late-game power generator.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Shadowbeak&lt;/strong&gt; = Kitsun + Astegon — top-tier Dark mount.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Faleris&lt;/strong&gt; = Vanwyrm + Anubis — flying mount with Kindling 3.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How to Plan a Breeding Chain (Work Backwards)
&lt;/h2&gt;

&lt;p&gt;The smartest way to breed a late-game target is to work backwards. Say you want &lt;strong&gt;Astegon&lt;/strong&gt; (Cryolinx + Helzephyr is one confirmed pairing). Check your Palbox: if you own neither parent, don't start randomly combining what you have — reverse-search each missing parent in turn until you reach Pals you actually own, then breed forward along that route. A mathematically shorter chain that needs three Pals you don't own is worse than a longer chain built from your existing collection. This "start from the target" habit is the single biggest difference between players who breed efficiently and players who burn through cake.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passives: The Second Half of Breeding
&lt;/h2&gt;

&lt;p&gt;Getting the right &lt;em&gt;species&lt;/em&gt; is only half the project. Each egg rolls &lt;strong&gt;one to four passive skill slots&lt;/strong&gt;, filled from the combined pool of both parents' passives — plus a chance of random extras. The hidden IVs (0–100 for HP, Attack, and Defense) land roughly 30% from each parent and 40% random per stat, according to community testing.&lt;/p&gt;

&lt;p&gt;The practical strategy: &lt;strong&gt;breed the species first, then refine the passives&lt;/strong&gt;. Lock in your Anubis, then keep breeding Anubis pairs carrying the traits you want until the passive combination clicks. Palworld 1.0 also added a low-probability &lt;strong&gt;mutation&lt;/strong&gt; event at hatch — a different species entirely, pulled from a narrow band near the expected result — so even a "solved" pairing can still surprise you.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 30-Second Summary
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Formula: child target = floor((rankA + rankB + 1) ÷ 2), nearest breedable Pal hatches.&lt;/li&gt;
&lt;li&gt;Special combinations and same-species pairs override the formula — check those first.&lt;/li&gt;
&lt;li&gt;Breeding averages: you can't hatch anything rarer than your rarest parent.&lt;/li&gt;
&lt;li&gt;Species first, passives second: eggs roll 1–4 passive slots from both parents' combined pool.&lt;/li&gt;
&lt;li&gt;Version matters: Palworld 1.0 changed breeding data, so pre-1.0 charts can't be trusted blindly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Want to skip the arithmetic? Run any pair through a free &lt;a href="https://calcrio.com/palworld-breeding-calculator/" rel="noopener noreferrer"&gt;palworld breeding calculator&lt;/a&gt; — parents-to-child, target-to-parents reverse lookup, and multi-generation chain planning, all on the current 1.0 dataset.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How the Circle's r=2 Paradox Works — Area = Circumference 12.57</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Tue, 03 Nov 2026 08:58:39 +0000</pubDate>
      <link>https://dev.to/calcrio/how-the-circles-r2-paradox-works-area-circumference-1257-2di4</link>
      <guid>https://dev.to/calcrio/how-the-circles-r2-paradox-works-area-circumference-1257-2di4</guid>
      <description>&lt;p&gt;Take a circle with radius 2. Compute its area: πr² = π × 4 = &lt;strong&gt;4π ≈ 12.57&lt;/strong&gt;. Compute its circumference: 2πr = 2π × 2 = &lt;strong&gt;4π ≈ 12.57&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The same number. Twice. Is the circle trying to tell us something profound — or is this just a numerical prank? Let's do the math properly and find out.&lt;/p&gt;

&lt;h2&gt;
  
  
  The two formulas
&lt;/h2&gt;

&lt;p&gt;Everything starts with how differently the two quantities grow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Circumference:&lt;/strong&gt; C = 2πr — &lt;em&gt;linear&lt;/em&gt; in r. Double the radius, double the distance around.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Area:&lt;/strong&gt; A = πr² — &lt;em&gt;quadratic&lt;/em&gt; in r. Double the radius, quadruple the space inside.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because they grow at different rates, their curves can only cross at one point. Set them equal and solve:&lt;/p&gt;

&lt;p&gt;2πr = πr² → 2 = r (dividing both sides by πr, valid for r &amp;gt; 0)&lt;/p&gt;

&lt;p&gt;So r = 2 is the &lt;em&gt;only&lt;/em&gt; radius where the numbers coincide. At r = 3 they've already split: C = 6π ≈ 18.85 vs A = 9π ≈ 28.27. At r = 7 the gap is huge: C ≈ 43.98 vs A ≈ 153.94. The crossing at r = 2 is forced by the algebra — there's exactly one solution, so there's exactly one coincidence.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it's a coincidence, not a discovery
&lt;/h2&gt;

&lt;p&gt;Here's the part that kills the mystique: the two 12.57s are &lt;strong&gt;different kinds of quantities&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Area is measured in &lt;em&gt;square&lt;/em&gt; units (cm²).&lt;/li&gt;
&lt;li&gt;Circumference is measured in &lt;em&gt;length&lt;/em&gt; units (cm).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Writing "A = C" is a category error, like saying "5 kilograms equals 5 meters." The numbers match; the quantities don't. It would be just as legitimate to point out that a circle with radius 1/π has area equal to its radius (both 1/π ≈ 0.318) — algebraically true, physically meaningless.&lt;/p&gt;

&lt;p&gt;That said, coincidences like this are fantastic teaching tools. The r = 2 crossing is the perfect excuse to make students say the units out loud — "12.57 &lt;em&gt;square&lt;/em&gt; units vs 12.57 &lt;em&gt;length&lt;/em&gt; units" — and once they hear themselves, the lesson sticks forever.&lt;/p&gt;

&lt;h2&gt;
  
  
  Checking it with code
&lt;/h2&gt;

&lt;p&gt;If you're the type who trusts nothing until it runs, here's the whole paradox in JavaScript:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;r&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;area&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;r&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;       &lt;span class="c1"&gt;// 12.5664&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;circumference&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;r&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="c1"&gt;// 12.5664&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;area&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="nx"&gt;circumference&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;  &lt;span class="c1"&gt;// true (up to float precision)&lt;/span&gt;

&lt;span class="c1"&gt;// and the general case:&lt;/span&gt;
&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PI&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;radius&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="c1"&gt;// 1  3.14    6.28&lt;/span&gt;
&lt;span class="c1"&gt;// 2  12.57  12.57  ← the crossing&lt;/span&gt;
&lt;span class="c1"&gt;// 3  28.27  18.85&lt;/span&gt;
&lt;span class="c1"&gt;// 5  78.54  31.42&lt;/span&gt;
&lt;span class="c1"&gt;// 7  153.94  43.98&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The table tells the real story: below r = 2 the circumference wins (the linear term dominates), above r = 2 the area pulls away (the quadratic term dominates). The crossing is inevitable and unique — exactly what you'd expect from a line meeting a parabola.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;

&lt;p&gt;The best way to internalize the paradox is to play with it: change the radius, watch the two values diverge, and try the reverse conversions (circumference → area is r = C/(2π), then A = πr²). This free &lt;a href="https://calcrio.com/circle-calculator/" rel="noopener noreferrer"&gt;circle calculator&lt;/a&gt; computes all six circle measurements from any single input with the exact π forms and the full working — and if you specifically want to drill the area side, its &lt;a href="https://calcrio.com/circle-calculator/" rel="noopener noreferrer"&gt;area of a circle calculator&lt;/a&gt; mode shows why A = πd²/4 for a diameter input. Or just enter radius 2 in the &lt;a href="https://calcrio.com/circle-calculator/" rel="noopener noreferrer"&gt;circle calculator&lt;/a&gt; and watch both cards land on 12.57 — the prettiest numerical coincidence in basic geometry.&lt;/p&gt;

&lt;p&gt;So: r = 2, area = circumference = 4π = 12.57. Real math, fake paradox, excellent lesson. The next time someone tells you it's deep, ask them what the units are.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>math</category>
      <category>geometry</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Percent Change, Explained: The Math Behind Increases, Decreases, and the 10% Trap</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Tue, 03 Nov 2026 03:07:07 +0000</pubDate>
      <link>https://dev.to/calcrio/percent-change-explained-the-math-behind-increases-decreases-and-the-10-trap-4n1h</link>
      <guid>https://dev.to/calcrio/percent-change-explained-the-math-behind-increases-decreases-and-the-10-trap-4n1h</guid>
      <description>&lt;p&gt;Percentages are everywhere — sale tags, tip screens, pay raises, stock charts. And yet the single most useful percentage skill is one almost nobody practices deliberately: &lt;strong&gt;percent change&lt;/strong&gt;. Once you understand it, you can see through misleading sales, decode a raise offer in seconds, and never get tripped up by the famous "10% trap" again.&lt;/p&gt;

&lt;h2&gt;
  
  
  The One Formula You Need
&lt;/h2&gt;

&lt;p&gt;Percent change = (new value − old value) ÷ old value × 100.&lt;/p&gt;

&lt;p&gt;The sign tells you the direction: positive means increase, negative means decrease.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A $30 book now costs $39 → (39 − 30) ÷ 30 × 100 = &lt;strong&gt;30% increase&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;A $50 sweater marked down to $38 → (38 − 50) ÷ 50 × 100 = &lt;strong&gt;−24%&lt;/strong&gt;, i.e., a &lt;strong&gt;24% decrease&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's it. Every example below is just this formula wearing a different outfit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example 1: The Sale-Price Test
&lt;/h2&gt;

&lt;p&gt;A jacket is $80, and the store offers 25% off. What's the final price?&lt;/p&gt;

&lt;p&gt;There are two ways to do this, and both are worth knowing:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Method A — subtract the discount:&lt;/strong&gt; 25% of $80 = $20 → $80 − $20 = &lt;strong&gt;$60&lt;/strong&gt;.&lt;br&gt;
&lt;strong&gt;Method B — multiply by what's left:&lt;/strong&gt; 100% − 25% = 75% → $80 × 0.75 = &lt;strong&gt;$60&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Method B is the superpower. Whenever a problem says "decrease by X%," multiply by (1 − X). For "increase by X%," multiply by (1 + X). A 30% raise on $3,000: $3,000 × 1.10 = &lt;strong&gt;$3,300&lt;/strong&gt;. A 4% pay bump on $50,000: $50,000 × 1.04 = &lt;strong&gt;$52,000&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example 2: The 10% Trap
&lt;/h2&gt;

&lt;p&gt;Here's the classic. A $100 pair of shoes goes &lt;strong&gt;up 10%&lt;/strong&gt;, then a month later goes &lt;strong&gt;down 10%&lt;/strong&gt;. What does it cost now?&lt;/p&gt;

&lt;p&gt;Most people's gut says $100. The gut is wrong.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After the 10% increase: $100 × 1.10 = &lt;strong&gt;$110&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;After the 10% decrease: $110 × 0.90 = &lt;strong&gt;$99&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Why? Because the 10% &lt;em&gt;down&lt;/em&gt; applies to the new, larger base ($110), so the dollar drop ($11) is bigger than the dollar gain ($10). Successive percentages don't cancel — they compound. This single idea is why "was $X, now back down" sales aren't always the deal they look like, and why investors get burned when they assume a 50% loss needs only a 50% gain to recover (it needs a &lt;strong&gt;100%&lt;/strong&gt; gain).&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example 3: The Sneaky Stack — When Two Discounts Hit
&lt;/h2&gt;

&lt;p&gt;An $200 item gets a 25% increase, then a 25% decrease. Final price?&lt;/p&gt;

&lt;p&gt;If you multiply naively: 200 × 1.25 × 0.75 = &lt;strong&gt;$187.50&lt;/strong&gt;. Not $200 — the trap again, costing you $12.50.&lt;/p&gt;

&lt;p&gt;But here's a fun twist worth memorizing: &lt;strong&gt;an increase of 25% followed by a decrease of 20% brings you exactly back to start&lt;/strong&gt; (1.25 × 0.80 = 1.0). Order doesn't even matter — 0.80 × 1.25 = 1.0 too. Whenever you see complementary percent pairs like this, the multiplication shortcut beats doing it step by step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Percentage Points vs. Percent — Stop Mixing These Up
&lt;/h2&gt;

&lt;p&gt;This is the one that trips up adults most. A savings account rate goes from &lt;strong&gt;4% to 6%&lt;/strong&gt;. Two things are true:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;It rose by &lt;strong&gt;2 percentage points&lt;/strong&gt; (6 − 4 = 2).&lt;/li&gt;
&lt;li&gt;It rose by &lt;strong&gt;50 percent&lt;/strong&gt; ((6 − 4) ÷ 4 = 50%).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Both are correct; they answer different questions. If a bank advertises "50% higher interest," that sounds dramatic — but it's just 4% → 6%. Whenever someone quotes a percentage change &lt;em&gt;of a percentage&lt;/em&gt;, ask which one they mean. Headlines love this ambiguity; you don't have to fall for it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Worked Example 4: Sanity-Check a "Deal"
&lt;/h2&gt;

&lt;p&gt;A store lists a book at $63, marked "40% off the list price." What was the list price?&lt;/p&gt;

&lt;p&gt;Work backward: 100% − 40% = 60% → list price × 0.60 = 63 → list = 63 ÷ 0.60 = &lt;strong&gt;$105&lt;/strong&gt;. And check: (63 − 105) ÷ 105 = −40%. ✓&lt;/p&gt;

&lt;p&gt;This backward version is where most shopping mistakes happen — people try to "add 40% to $63" ($88.20, wrong) instead of dividing by 0.60. When you want a raise, a bonus, or a discount &lt;em&gt;reversed&lt;/em&gt;, the divisor is always (1 ± percent), not a simple addition. It's the kind of check a free &lt;a href="https://calcrio.com/percentage-increase-decrease-calculator/" rel="noopener noreferrer"&gt;percentage increase calculator&lt;/a&gt; does for you in seconds, step by step.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 30-Second Summary
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Formula: (new − old) ÷ old × 100. Sign = direction.&lt;/li&gt;
&lt;li&gt;"X% off" → multiply by (1 − X). "X% up" → multiply by (1 + X).&lt;/li&gt;
&lt;li&gt;Successive percentages multiply, never cancel: 10% up then 10% down lands at $99, not $100.&lt;/li&gt;
&lt;li&gt;Reversing a discount? Divide by (1 − X), never add the percent back on.&lt;/li&gt;
&lt;li&gt;Percentage &lt;em&gt;points&lt;/em&gt; ≠ percent &lt;em&gt;change&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The only way to make this automatic is repetition. Try a free &lt;a href="https://calcrio.com/percentage-increase-decrease-calculator/" rel="noopener noreferrer"&gt;percentage increase calculator&lt;/a&gt; to check your work on real problems — like whether that "70% off + extra 10%" sale is really the steal it claims (it's 73% off total, since 0.30 × 0.90 = 0.27). And if you're comparing two sales side by side, run both through a &lt;a href="https://calcrio.com/percentage-increase-decrease-calculator/" rel="noopener noreferrer"&gt;percentage decrease calculator&lt;/a&gt; to see the true discount on each before you decide. A calculator is just training wheels; the math behind it is yours to keep.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Square Roots &amp; Cube Roots, Explained: The Math Behind 144, 27, and the 15-vs-21 Trap</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Mon, 02 Nov 2026 09:13:33 +0000</pubDate>
      <link>https://dev.to/calcrio/square-roots-cube-roots-explained-the-math-behind-144-27-and-the-15-vs-21-trap-3lnd</link>
      <guid>https://dev.to/calcrio/square-roots-cube-roots-explained-the-math-behind-144-27-and-the-15-vs-21-trap-3lnd</guid>
      <description>&lt;p&gt;There's a math question floating around the internet that splits rooms: &lt;strong&gt;√144 + ∛27 = ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Half the people say 15. The other half say 21 — confidently. Both can't be right, and the reason one of them is wrong is a genuinely interesting little piece of math. Let's break down square roots and cube roots properly, and see exactly where the trap snaps shut.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a square root really is
&lt;/h2&gt;

&lt;p&gt;A square root asks: &lt;em&gt;what number, multiplied by itself, gives this?&lt;/em&gt; If y² = x, then y = √x.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;√144 = 12, because 12 × 12 = 144.&lt;/li&gt;
&lt;li&gt;√25 = 5, because 5 × 5 = 25.&lt;/li&gt;
&lt;li&gt;√2 ≈ 1.41421 — no whole number works, and the decimal never terminates. That's an irrational number.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can also write roots as fractional exponents: √x = x^(1/2). So √144 = 144^(1/2) = 12. This isn't just notation trivia — it means every exponent rule you know applies to roots. For example, (√5)² = 5.&lt;/p&gt;

&lt;h2&gt;
  
  
  What a cube root really is
&lt;/h2&gt;

&lt;p&gt;A cube root asks: &lt;em&gt;what number, multiplied by itself twice, gives this?&lt;/em&gt; If y³ = x, then y = ∛x. In exponent form: ∛x = x^(1/3).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;∛27 = 3, because 3 × 3 × 3 = 27.&lt;/li&gt;
&lt;li&gt;∛64 = 4, because 4 × 4 × 4 = 64.&lt;/li&gt;
&lt;li&gt;∛(−8) = −2, because (−2) × (−2) × (−2) = −8.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That last one is the key difference between the two operations: &lt;strong&gt;cube roots accept negative inputs, square roots don't.&lt;/strong&gt; Three negatives multiply to a negative, so odd roots of negatives are real. But no real number squared gives a negative — √(−4) has no real answer. (It becomes the imaginary number 2i, which is a story for another post.)&lt;/p&gt;

&lt;h2&gt;
  
  
  The 15-vs-21 trap
&lt;/h2&gt;

&lt;p&gt;Now the puzzle. Work it carefully:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;√144 = 12 — almost everyone gets this.&lt;/li&gt;
&lt;li&gt;∛27 = 3 — and here's where it breaks. A huge number of people answer &lt;strong&gt;9&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;12 + 3 = &lt;strong&gt;15&lt;/strong&gt;. The trap answer is 12 + 9 = &lt;strong&gt;21&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Why 9? Because people confuse "cube root" with "divide by 3": 27 ÷ 3 = 9. Division and roots are related (a root undoes a power, the way division undoes multiplication), but they are &lt;em&gt;not&lt;/em&gt; the same operation. The one-line killer for this mistake is the &lt;strong&gt;cubing test&lt;/strong&gt;: cube your candidate and check. 9³ = 729, not 27. 3³ = 27. Done — the trap collapses.&lt;/p&gt;

&lt;p&gt;This is also a nice reminder of a rule worth memorizing: &lt;strong&gt;you can split a root across multiplication, never across addition.&lt;/strong&gt; √(a × b) = √a × √b is fine. But √(a + b) ≠ √a + √b — check with a = 16, b = 9: √(25) = 5, while √16 + √9 = 7.&lt;/p&gt;

&lt;h2&gt;
  
  
  Simplifying radicals: the exact form
&lt;/h2&gt;

&lt;p&gt;Some roots don't come out even. √50 isn't a whole number — but you don't have to settle for a decimal. Factor out the largest perfect square:&lt;/p&gt;

&lt;p&gt;√50 = √(25 × 2) = √25 × √2 = &lt;strong&gt;5√2&lt;/strong&gt; ≈ 7.0711&lt;/p&gt;

&lt;p&gt;The general method: prime-factorize the radicand, group factors into pairs (for square roots) or triples (for cube roots), and move one copy of each complete group outside. More examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;√72 = √(36 × 2) = 6√2 ≈ 8.4853&lt;/li&gt;
&lt;li&gt;√18 = √(9 × 2) = 3√2 ≈ 4.2426&lt;/li&gt;
&lt;li&gt;∛54 = ∛(27 × 2) = 3∛2 ≈ 3.7798&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Teachers love this form because it's exact — 5√2 &lt;em&gt;is&lt;/em&gt; √50, while 7.0711 is an approximation. And there's a practical reason to keep it: round only at the very end. Approximating √2 as 1.41 early and multiplying by 5 gives 7.05, which is off from the true 7.0711.&lt;/p&gt;

&lt;h2&gt;
  
  
  Finding roots by hand
&lt;/h2&gt;

&lt;p&gt;Three techniques cover nearly everything:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memorize the perfect powers.&lt;/strong&gt; Squares to 15² = 225 and cubes 1, 8, 27, 64, 125 make √144 = 12 and ∛27 = 3 instant recall.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prime factorization.&lt;/strong&gt; For √144: 144 = 2⁴ × 3² → pair the factors → 2 × 2 × 3 = 12. Exact, no guessing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bounding.&lt;/strong&gt; Trap the answer between known powers: 7² = 49 &amp;lt; 50 &amp;lt; 64 = 8², so √50 is just above 7 (it's 7.0711). If a result ever falls outside your bounds, you know it's wrong before you even check.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;

&lt;p&gt;The best way to internalize this is to play with the operations — change the radicand, watch the factorization, and test yourself on the trap questions. This free &lt;a href="https://calcrio.com/square-root-calculator/" rel="noopener noreferrer"&gt;square root calculator&lt;/a&gt; handles square roots, cube roots, nth roots, and radical simplification with every step shown, and if you specifically want to drill the other half of the trap, the same page's &lt;a href="https://calcrio.com/square-root-calculator/" rel="noopener noreferrer"&gt;cube root calculator&lt;/a&gt; mode walks through ∛27 = 3 and ∛(−8) = −2 with the full working.&lt;/p&gt;

&lt;p&gt;So: √144 + ∛27 = 15. Now you know exactly why — and you've got the cubing test to settle it the next time someone insists it's 21.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>math</category>
      <category>education</category>
    </item>
    <item>
      <title>Rent Splits, Explained: The Math Behind Fair Roommate Shares</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Mon, 02 Nov 2026 05:26:29 +0000</pubDate>
      <link>https://dev.to/calcrio/rent-splits-explained-the-math-behind-fair-roommate-shares-123i</link>
      <guid>https://dev.to/calcrio/rent-splits-explained-the-math-behind-fair-roommate-shares-123i</guid>
      <description>&lt;p&gt;Every month, millions of roommates run the same calculation: who owes what for rent. Most of them do it with a group chat, a guess, and a slowly growing resentment. The math itself is simple — the interesting part is that "fair" is not one formula, it is a choice of formula. Here is the actual math behind the three methods roommates use, with real numbers.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three models
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Equal split.&lt;/strong&gt; Total rent divided by the number of roommates. &lt;code&gt;$2,400 ÷ 3 = $800 each.&lt;/code&gt; Trivial, transparent, and correct exactly when bedrooms are interchangeable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Room-size split.&lt;/strong&gt; Separate the apartment into private space (bedrooms) and shared space (kitchen, living room, hallways). Shared space is split equally; private space is priced by area:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;common_share_per_person = (rent × common_pct) ÷ roommates
bedroom_share(person)  = (rent × (1 − common_pct)) × (room_sqft ÷ total_bedroom_sqft)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With $2,400 rent, a 40% common carve-out ($960 → $320 each), and bedrooms of 200/150/110 sq ft (460 total), the bedroom portion ($1,440) divides into $625.93, $469.57, and $344.35. Final shares: $946, $790, $664 — summing to exactly $2,400. The smallest-room roommate saves $136/month versus the equal split.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Income-based split.&lt;/strong&gt; Each person pays their share of combined household income:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;share(person) = rent × (income(person) ÷ total_household_income)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With take-home pay of $5,000 / $3,750 / $1,250 ($10,000 combined) on the same $2,400 rent, the shares are $1,200 / $900 / $300. Elegant property: rent is 24% of take-home pay for &lt;em&gt;everyone&lt;/em&gt;. The burden is identical even though the dollar amounts differ.&lt;/p&gt;

&lt;h2&gt;
  
  
  The edge cases that break naive math
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Rounding.&lt;/strong&gt; Percentages produce fractions of cents. Round each person's final share to the cent and adjust the last share by the leftover pennies so the total matches the rent exactly — otherwise someone is short $0.01 every month and it becomes a whole conversation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Couples.&lt;/strong&gt; A couple sharing one room should pay more than a single person but less than double. The standard approach: split the bedroom portion by room size, then split the common-space portion by &lt;em&gt;headcount&lt;/em&gt;. Two people use the kitchen twice as much as one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The auction method.&lt;/strong&gt; When the group cannot agree on a valuation, bid on it — the Knaster inheritance procedure. Start every room at the equal price, raise the contested room by $50 until only one person stays in, and distribute the surplus to the others. It guarantees an envy-free outcome because everyone set their own price.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fixed vs. variable bills.&lt;/strong&gt; A common mistake is applying the rent method to utilities. Internet and insurance are fixed costs — split evenly, always, even if someone is away. Electricity and gas are variable — split among whoever was actually home that billing period. Different cost structures, different rules.&lt;/p&gt;

&lt;h2&gt;
  
  
  Combining methods: the hybrid split
&lt;/h2&gt;

&lt;p&gt;Real households rarely use one method in pure form. A common hybrid: split the &lt;em&gt;common-space portion&lt;/em&gt; of rent evenly, apply the &lt;em&gt;income&lt;/em&gt; percentages only to the &lt;em&gt;bedroom portion&lt;/em&gt;, and let the higher earner choose the room. On $2,400 rent with a 40% common carve-out ($960 → $320 each), the $1,440 bedroom portion splits 50/37.5/12.5 by income: $720, $540, $180. Totals: $1,040 / $860 / $500 = $2,400. The hybrid keeps the income method's equal-burden property while acknowledging that shared space is shared space — a good example of composing simple functions into a fairer system.&lt;/p&gt;

&lt;h2&gt;
  
  
  The verification habit
&lt;/h2&gt;

&lt;p&gt;Every example in this post ends the same way: &lt;strong&gt;check that the parts sum to the whole.&lt;/strong&gt; &lt;code&gt;$1,200 + $900 + $300 = $2,400. ✓&lt;/code&gt; It is the cheapest assertion in applied math, and it catches the two classic bugs: percentages that do not sum to 100 (usually a rounding leak) and mixing gross with net income mid-calculation. If you build this in a spreadsheet, make the total cell a formula — &lt;code&gt;=SUM(shares)&lt;/code&gt; — and format it to flag red when it does not equal the rent. A rent split that does not add up is not a rounding error; it is a bug.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this is a nice teaching example
&lt;/h2&gt;

&lt;p&gt;For anyone teaching percentages, this is better than textbook problems: the inputs are real, the stakes are felt, and the "right answer" depends on a modeling choice, not just arithmetic. It covers proportional reasoning (room-size weights), percentage-of-total (income shares), fixed vs. variable cost allocation, and rounding to exact totals — all in one scenario students actually live in.&lt;/p&gt;

&lt;p&gt;If you want to skip the arithmetic, Calcrio's free &lt;a href="https://calcrio.com/rent-split-calculator/" rel="noopener noreferrer"&gt;rent split calculator&lt;/a&gt; runs the equal, room-size, and income-based methods with your own numbers and shows each person's share with the exact math. It is the same calculator we used to verify every figure in this post — a &lt;a href="https://calcrio.com/rent-split-calculator/" rel="noopener noreferrer"&gt;rent split calculator&lt;/a&gt; is the neutral third party every roommate conversation needs.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Logarithms, Explained: The Domain Trap Every Student Should Know</title>
      <dc:creator>Calcrio</dc:creator>
      <pubDate>Sun, 01 Nov 2026 05:27:57 +0000</pubDate>
      <link>https://dev.to/calcrio/logarithms-explained-the-domain-trap-every-student-should-know-1d6c</link>
      <guid>https://dev.to/calcrio/logarithms-explained-the-domain-trap-every-student-should-know-1d6c</guid>
      <description>&lt;p&gt;Logarithms are one of those topics students learn to fear without ever learning to understand. Ask a class what log₂(32) means and most hands stay down — yet the idea is almost embarrassingly simple: a logarithm is just the answer to "what power do I need?" log₂(32) = 5 because 2⁵ = 32. That is the entire concept. Everything else — the rules, the equations, the infamous exam traps — follows from that one sentence.&lt;/p&gt;

&lt;p&gt;If you want to check values while you read, this free &lt;a href="https://calcrio.com/logarithm-calculator/" rel="noopener noreferrer"&gt;logarithm calculator&lt;/a&gt; evaluates log base 10, natural log, and any custom base with the steps shown.&lt;/p&gt;

&lt;h2&gt;
  
  
  The definition that unlocks everything
&lt;/h2&gt;

&lt;p&gt;log_b(x) = y means exactly b^y = x. The logarithm form and the exponential form are the same fact written two ways, and converting between them is the master key to every log problem. log₁₀(1000) = 3 is just 10³ = 1000 in disguise. ln(e³) = 3 is e³ = e³ wearing a mask. When a logarithm looks scary, rewrite it as an exponential and it usually becomes trivial.&lt;/p&gt;

&lt;p&gt;Two bases appear so often they earned their own shorthand: &lt;strong&gt;log(x)&lt;/strong&gt; with no base means base 10 (the common logarithm), and &lt;strong&gt;ln(x)&lt;/strong&gt; means base e, about 2.71828 (the natural logarithm). They are proportional — ln(x) = 2.302585 × log(x) — but they are not interchangeable, and mixing them up is one of the most common log errors. ln(10) ≈ 2.3026; log(10) = 1. Same input, wildly different answers.&lt;/p&gt;

&lt;h2&gt;
  
  
  The one rule that matters most: the domain
&lt;/h2&gt;

&lt;p&gt;Here is the fact that separates students who survive log equations from students who don't: &lt;strong&gt;a logarithm's argument must be positive&lt;/strong&gt;. There is no exponent that makes a positive base equal 0 or a negative number, so log(0) and log(−5) simply don't exist. Every log equation's solutions must keep every argument positive — and this is where examiners set their trap.&lt;/p&gt;

&lt;h2&gt;
  
  
  The classic exam trap, worked
&lt;/h2&gt;

&lt;p&gt;Solve: log₂(x) + log₂(x − 2) = 3.&lt;/p&gt;

&lt;p&gt;Combine the logs with the product rule: log₂(x(x − 2)) = 3. Convert to exponential form: x(x − 2) = 2³ = 8. Solve the quadratic x² − 2x − 8 = 0: (x − 4)(x + 2) = 0, so x = 4 or x = −2.&lt;/p&gt;

&lt;p&gt;Now the trap springs. The original equation needs x &amp;gt; 0 &lt;em&gt;and&lt;/em&gt; x − 2 &amp;gt; 0, i.e. x &amp;gt; 2. x = 4 passes: log₂(4) + log₂(2) = 2 + 1 = 3 ✓. But x = −2 gives log₂(−2), which is undefined — no power of 2 is negative. So −2 is an &lt;strong&gt;extraneous solution&lt;/strong&gt;: correct algebra, wrong answer. The real solution is x = 4 only.&lt;/p&gt;

&lt;p&gt;This is why learning to &lt;a href="https://calcrio.com/how-to-solve-logarithmic-equations-step-by-step/" rel="noopener noreferrer"&gt;solve logarithmic equations&lt;/a&gt; properly means learning the domain check as part of the method, not as an afterthought.&lt;/p&gt;

&lt;h2&gt;
  
  
  The four rules worth memorising
&lt;/h2&gt;

&lt;p&gt;Everything else is bookkeeping:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Product:&lt;/strong&gt; log_b(xy) = log_b(x) + log_b(y)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quotient:&lt;/strong&gt; log_b(x/y) = log_b(x) − log_b(y)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Power:&lt;/strong&gt; log_b(x^n) = n · log_b(x)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Change of base:&lt;/strong&gt; log_b(x) = ln(x) / ln(b)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The change-of-base formula is the practical one: most calculators only have log and ln buttons, so log₂(1000) = ln(1000)/ln(2) ≈ 6.9078/0.6931 ≈ 9.9658. And the anti-rule: log(x + y) is &lt;em&gt;not&lt;/em&gt; log(x) + log(y). The sum rule works on multiplication, never on addition.&lt;/p&gt;

&lt;h2&gt;
  
  
  The mental model that makes it stick
&lt;/h2&gt;

&lt;p&gt;Here's a trick that turns evaluation into estimation. Powers of 2 go 2, 4, 8, 16, 32, 64 — so log₂ of anything between 32 and 64 sits between 5 and 6. log₂(50)? Somewhere around 5.6. (Exactly ≈ 5.644.) Once students see logarithms as "which power am I between," the notation stops looking like alphabet soup and starts looking like a number line. I make students guess before they compute: guess log₁₀(500). It's between 2 and 3 (100 and 1000), closer to 3. The real answer is ≈ 2.699 — and now they trust it because they predicted it. The calculator confirms; the brain does the understanding.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why logarithms are worth learning
&lt;/h2&gt;

&lt;p&gt;Logs aren't exam decoration. The pH scale is −log₁₀ of hydrogen-ion concentration. The Richter scale and decibels are logarithmic. Compound interest, half-life, and population growth all solve with logarithms. And if you ever study algorithms, you'll meet log base 2 again — binary search is "log₂ fast," which is why it scales to billions of items.&lt;/p&gt;

&lt;p&gt;So don't memorise logarithms as symbol manipulation. Learn the one question they answer — "what power do I need?" — respect the domain, and run the numbers through a &lt;a href="https://calcrio.com/logarithm-calculator/" rel="noopener noreferrer"&gt;logarithm calculator&lt;/a&gt; until the pattern feels obvious. The trap only catches students who skip the check.&lt;/p&gt;

</description>
      <category>math</category>
      <category>education</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
