/* totient.tc - lrb - 1/17/9 totient int m [ int sm;sm=m int primes(25),myprimes(25) primes(0)=2;primes(1)=3;primes(2)=5;primes(3)=7;primes(4)=11 primes(5)=13;primes(6)=17;primes(7)=19;primes(8)=23;primes(9)=29 primes(10)=31;primes(11)=37;primes(12)=41;primes(13)=43;primes(14)=47 primes(15)=53;primes(16)=59;primes(17)=61;primes(18)=67;primes(19)=71 primes(20)=73;primes(21)=79;primes(22)=83;primes(23)=89;primes(24)=97 primes(25)=101 int i,sw,j;j=-1 for (i=0;i<26;++i) [ sw=0 while (m%primes(i)==0) [sw=1;m=m/primes(i)] if (sw) myprimes(++j)=primes(i) if (m==1) break ] int t t=sm for (i=0;i<=j;++i) t=t/myprimes(i)*(myprimes(i)-1) return t ] allstars [ int i,t for (i=5;i<102;++i) [ pl "";pn i;ps " -";pn (t=totient i);ps " -";pn ((t-2)/2) ] pl "" ]