Mathematics · Algebra

Euler Totient Calculator

Count positive integers up to n that are coprime with n.

Runs locally
Your numbers

Inputs and results stay in this browser. Change one value at a time to explore the relationship.

Your inputCalculatedPassed forward in chains
Euler totient φ(n)4
Distinct prime factors2

Calculation steps

  1. Remove the fraction 1/p for each distinct prime p dividing 12.
  2. φ(12)=4.

Understand Euler totient

One idea, three depths

Choose how deeply to explain Euler totient

Euler totient: Count positive integers up to n that are coprime with n.

Age 5Explain it to a 5-year-oldStart with a picture

Imagine using Euler totient to answer this question: count positive integers up to n that are coprime with n? Enter Whole number n; the calculator shows Euler totient φ(n). For example: φ(12)=4 because 1,5,7 and 11 are coprime with 12. The answer tells you Euler totient φ(n).

Age 15Explain it to a 15-year-oldConnect it to the formula

Each distinct prime factor removes its multiples from the coprime count. The rule is φ(n)=n∏(1−1/p). Its input values are Whole number n, and the main result is Euler totient φ(n). For example: φ(12)=4 because 1,5,7 and 11 are coprime with 12.

CollegeExplain it at college levelState the model precisely

This calculator evaluates the stated euler totient relation over the valid integer domain stated below. The implemented relation is φ(n)=n∏(1−1/p), evaluated from Whole number n to produce Euler totient φ(n). Each distinct prime factor removes its multiples from the coprime count. The product uses each distinct prime factor once.

Inputs and valid domain

  • Whole number n must be an integer, at least 1, at most 1000000000000.

Important boundary: The product uses each distinct prime factor once.

The formula

φ(n)=n∏(1−1/p)

How the calculator works through it

It substitutes Whole number n into the formula and exposes every numerical step above. The main output is Euler totient φ(n), accompanied by Distinct prime factors.

Read the result correctly

The Euler totient φ(n) is the direct answer to “count positive integers up to n that are coprime with n.” Read it with the units shown beside the inputs; a sign, angle, percentage or rate changes what the number means.

A worked check

φ(12)=4 because 1,5,7 and 11 are coprime with 12.

Where this model stops being reliable

The product uses each distinct prime factor once.

Learn it by changing one value

Begin with the worked example, then change one value while keeping the others fixed. Compare the new result and calculation steps to identify which part of the formula changed.

Dictionary terms behind this calculator

Before studying the codeWhat you should know firstUse the calculator immediately, or check the foundations before reading the implementation.

These foundations help you understand why Euler totient works. They never block the calculator, and “optional” means useful context rather than a hidden requirement.

Hard requirements

  • Reading formulas and substituting values

    Euler totient uses φ(n)=n∏(1−1/p). You need to recognise what each side represents before substituting the stated inputs or rearranging the relationship.

    Review this foundation about 4 min

Strong support

Optional enrichment

Learn the missing foundationsI already know these — show the code

Mathematics → algorithm → program

Implement this calculation in code

These are direct reference implementations of the calculator's principal relationship and first output. They run locally and include a small known-answer check where the language supports it.

Algorithm

  1. Start phi at n.
  2. For every distinct prime divisor p, replace phi by phi/p*(p-1).
  3. Remove all copies of each prime before continuing.
Python
            def euler_totient(n: int) -> int:
    remaining, phi, p = n, n, 2
    while p * p <= remaining:
        if remaining % p == 0:
            while remaining % p == 0: remaining //= p
            phi = phi // p * (p - 1)
        p = 3 if p == 2 else p + 2
    return phi // remaining * (remaining - 1) if remaining > 1 else phi
assert euler_totient(12) == 4
          
Current calculator valuesUpdates when you change an input above.
              
            
C
            #include <assert.h>
#include <stdint.h>
uint64_t euler_totient(uint64_t n){uint64_t r=n;for(uint64_t p=2;p<=n/p;p+=(p==2?1:2))if(n%p==0){while(n%p==0)n/=p;r=r/p*(p-1);}if(n>1)r=r/n*(n-1);return r;}
int main(void){assert(euler_totient(12)==4);}
          
Current calculator valuesUpdates when you change an input above.
              
            
C++
            #include <cassert>
#include <cstdint>
std::uint64_t euler_totient(std::uint64_t n){std::uint64_t r=n;for(std::uint64_t p=2;p<=n/p;p+=(p==2?1:2))if(n%p==0){while(n%p==0)n/=p;r=r/p*(p-1);}if(n>1)r=r/n*(n-1);return r;}
int main(){assert(euler_totient(12)==4);}
          
Current calculator valuesUpdates when you change an input above.
              
            
Linux x86-64 assembly

x86-64 NASM · System V ABI · Linux · integer arguments in rdi, rsi and rdx

            ; uint64_t euler_totient(uint64_t n)
global euler_totient
section .text
euler_totient:
    mov r8, rdi
    mov rcx, 2
.factor:
    mov rax, rcx
    imul rax, rcx
    cmp rax, rdi
    ja .remaining
    mov rax, rdi
    xor edx, edx
    div rcx
    test rdx, rdx
    jnz .advance
.remove:
    mov rdi, rax
    mov rax, rdi
    xor edx, edx
    div rcx
    test rdx, rdx
    jz .remove
    mov rax, r8
    xor edx, edx
    div rcx
    mov r8, rax
    mov r9, rcx
    dec r9
    imul r8, r9
.advance:
    cmp rcx, 2
    jne .odd
    mov rcx, 3
    jmp .factor
.odd:
    add rcx, 2
    jmp .factor
.remaining:
    cmp rdi, 1
    jbe .done
    mov rax, r8
    xor edx, edx
    div rdi
    dec rdi
    imul rax, rdi
    mov r8, rax
.done:
    mov rax, r8
    ret
          
Current calculator valuesUpdates when you change an input above.
              
            
MATLAB
            function result = euler_totient(n)
    n = round(n); result = 0;
    for k = 1:n, result = result + double(gcd(k, n) == 1); end
end
          
Current calculator valuesUpdates when you change an input above.
              
            
Wolfram Language
            ClearAll[mwCalculate];
mwCalculate[n_Integer?Positive] := EulerPhi[n];
          
Current calculator valuesUpdates when you change an input above.
              
            

Continue in mathematical software

The downloaded file includes your current inputs and first calculated result. It is created locally.

Floating-point answers can differ slightly by language, compiler and processor. Compare within a suitable tolerance rather than assuming every decimal representation will be identical.

Supporting sourcesAcademic referencesPrimary standards, textbooks and complete citations

Standards, reading and academic references

Use the calculator as the worked interaction, then consult the primary standards and academic textbooks listed below. MW SysArc links to the original sources; the explanation on this page is original and does not reproduce them.

Algebra and Trigonometry 2e

Read the related free OpenStax mathematics chapters
Cite this book
APA 7
Abramson, J. (2021). Algebra and trigonometry 2e. OpenStax. https://openstax.org/books/algebra-and-trigonometry-2e/pages/1-introduction-to-prerequisites
MLA 9
Abramson, Jay. Algebra and Trigonometry 2e. OpenStax, 2021, https://openstax.org/books/algebra-and-trigonometry-2e/pages/1-introduction-to-prerequisites.
Chicago author-date
Abramson, Jay. 2021. Algebra and Trigonometry 2e. Houston, TX: OpenStax. https://openstax.org/books/algebra-and-trigonometry-2e/pages/1-introduction-to-prerequisites.

OpenStax entries are free to read online. Follow the licence shown on each linked source before redistributing or adapting its content.

Reuse the page responsiblyCite this pageAPA, MLA, Chicago, Harvard, BibTeX and RIS

These formats cite this calculator page itself. They are separate from the academic references above, which support the mathematical method and terminology.

APA 7

MW SysArc. (2026, July 21). Euler Totient Calculator. MW SysArc Tools. https://math.mwsysarc.com/algebra/euler-totient-function

MLA 9

MW SysArc. “Euler Totient Calculator.” MW SysArc Tools, 21 July 2026, https://math.mwsysarc.com/algebra/euler-totient-function. Accessed 31 Aug. 2026.

Chicago 17

MW SysArc. “Euler Totient Calculator.” MW SysArc Tools. Published July 21, 2026. Accessed August 31, 2026. https://math.mwsysarc.com/algebra/euler-totient-function.

Harvard

MW SysArc (2026) ‘Euler Totient Calculator’, MW SysArc Tools. Published 21 July 2026. Available at: https://math.mwsysarc.com/algebra/euler-totient-function (Accessed: 31 August 2026).

BibTeX and RIS records

BibTeX

@misc{mwsysarc_euler_totient_2026,
  author = {{MW SysArc}},
  title = {Euler Totient Calculator},
  howpublished = {MW SysArc Tools},
  year = {2026},
  url = {https://math.mwsysarc.com/algebra/euler-totient-function},
  note = {Published July 21, 2026; accessed August 31, 2026}
}

RIS

TY  - ELEC
AU  - MW SysArc
TI  - Euler Totient Calculator
T2  - MW SysArc Tools
PY  - 2026
DA  - 2026-07-21
Y2  - 2026-08-31
UR  - https://math.mwsysarc.com/algebra/euler-totient-function
N1  - Published July 21, 2026
ER  -

Clear answers

Frequently asked questions

What does the Euler totient do?

Count positive integers up to n that are coprime with n.

How does the Euler totient work?

The calculator applies φ(n)=n∏(1−1/p). Each distinct prime factor removes its multiples from the coprime count.

What can I learn from the Euler totient?

It connects the mathematical rule to your chosen numbers and shows each calculation step. Change one input at a time to see how the result responds.

Does MW SysArc receive or store what I enter?

No. The calculation runs locally in your browser. MW SysArc does not receive or store your calculation inputs.

How should I use the result?

Use the steps to understand the method, then verify important school or professional work using the notation and rounding rules required in your setting.

Last reviewed . Calculations tested .

MW SysArc Certified