Escriure una funció es_primer(n) que donat un nombre natural n retorni True si el nombre n és primer i False en cas contrari.
Entrada
La funció té un nombre natural com a paràmetre
Pista
Per a cada nombre n, calen com a màxim uns √n passos per saber si és primer o no.
Observacions
Podeu implementar la funció demanada iterativament o recursivament. Si la implementeu recursivament (de la manera més senzilla, que és el que s’espera) el nombre primer més gran que podreu provar és el 996001 (és un problema de la implementació de Python que fem servir. Es pot resoldre, però no cal en el nivell que se suposa que esteu). Si ho penseu bé, no hi ha límit en els nombres no primers que podeu provar.
Un cop definida la funció, en provar-la al REPL de Python us hauria de sortir el mateix que podeu observar més avall.
>>> es_primer(17) True >>> es_primer(12) False >>> es_primer(101) True >>> es_primer(102) False >>> es_primer(100019) True >>> es_primer(19937) True >>> es_primer(996001) True >>> es_primer(736541) False >>>