Newer
Older
#!/usr/bin/env python3
"""Hard work here. Not efficient, but hard."""
from typing import Tuple
import pinocchio as pin # type: ignore
def is_prime(number: int) -> bool:
"""Check if a number is prime."""
return not any(number % i == 0 for i in range(2, number))
def find_prime(goal: int = 10, verbose: bool = False) -> Tuple[int, int]:
"""Find the goal-th prime number."""
found = 0
i = 1 # let's enumerate all numbers
while found < goal: # until we have enough prime ones.
i += 1
if is_prime(i):
found += 1
if verbose:
print(f'the prime number n°{found} is {i}')
n = pin.Quaternion(i, i, i, i).norm()
print(f"the norm of a quaternion with {i} as all members is {n}")
return i, n
if __name__ == '__main__':
print(find_prime(50, verbose=True))