Euler totient function of number
    14 views (last 30 days)
  
       Show older comments
    
    Mohsin Shah
 on 3 Jun 2017
  
    
    
    
    
    Commented: Mohsin Shah
 on 3 Jun 2017
            I want to calculate Euler totient function for a number N. Euler function should give me an array of integers that are relatively prime to N. Let N=6 then Euler totient function should give a vector [1,2,4,5,7,8]. There are many user defined functions written by people but they all just count the numbers relatively prime to N. How can I get such a vector? Is there any MATLAB builtin command for Euler Totient function?
2 Comments
  David Goodmanson
      
      
 on 3 Jun 2017
				Hi Walter, it's because the greatest common divisor of those two is 1.
Accepted Answer
  David Goodmanson
      
      
 on 3 Jun 2017
        
      Edited: David Goodmanson
      
      
 on 3 Jun 2017
  
      Hi Mohsin, try
N = 48;                 % for example
n = 1:N-1;
ind = gcd(n,N)==1;
tot = n(ind)
% check
gcd(tot,N)             % all should be 1
not_tot = setdiff(n,tot)
gcd(not_tot,N)         % none should be 1
Your example actually has N=9 not N=6.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
