My code below should show if the number if an achilles number or not, I am inputting "500" and it is indeed an achilles number, but my program says it is not.
I believe my program is with my is_perfect_power function, but I don't know where to go from here.
is_powerful() is completely wrong. It returns true if there's any number i between 2 and n-1 that meets:
1. i divides n.
2. n divided by i is non zero. This condition is always true because i < n.
3. n is divisible by its square root.
A number is powerful if, for all integers i between 1 and itself, the following condition is met: (i is not prime) OR ((i is prime) AND (i divides n) AND (i*i divides n)) https://en.wikipedia.org/wiki/Powerful_number