Diferencia entre revisiones de «Implementación de algoritmos de teoría de números/Algoritmo de factorización en números primos»
Contenido eliminado Contenido añadido
+reestructurar secciones |
+formato |
||
Línea 74:
=== Pseudocódigo ===
Aplicando la iteración hasta la raíz cuadrada de ''n'' [<small>[[Implementación de algoritmos de teoría de números/Algoritmo de factorización en números primos#Lema 1|
sino▼
Combinando ambos lemas, de manera que se va incrementando ''i'' de a 2, 4, 2, 4.. a partir de 5 [<small>[[Implementación de algoritmos de teoría de números/Algoritmo de factorización en números primos#Lema 2|Lema 2]]</small>]▼
sino▼
'''algoritmo''' <math>\text{factorización }(n)</math>
'''si''' <math>n = 1</math> '''ó''' <math>n = 2</math> '''ó''' <math>n = 3</math>
'''devolver''' <math>n</math>
<math>i \leftarrow 2</math>
'''mientras''' <math>i \leq \lfloor \sqrt{n} \rfloor</math> '''hacer'''
'''si''' <math>i \in \mathbb{P}</math> '''y''' <math>i \mid n</math>
<math>\{ \text{lista factores } n \} \leftarrow i</math>
<math>n \leftarrow n/i</math>
'''sino'''
<math>i \leftarrow i+1</math>
<math>\{ \text{lista factores } n \} \leftarrow n</math>
'''devolver''' <math>\{ \text{lista factores } n \}</math>
▲Combinando ambos lemas, de manera que se va incrementando ''i'' de a 2, 4, 2, 4.. a partir de 5 [<small>[[Implementación de algoritmos de teoría de números/Algoritmo de factorización en números primos#Lema 2|
'''algoritmo''' <math>\text{factorización }(n)</math>
'''si''' <math>n = 1</math> '''ó''' <math>n = 2</math> '''ó''' <math>n = 3</math>
'''devolver''' <math>n</math>
<math>i \leftarrow 2</math>
<math>m \leftarrow 0</math>
'''mientras''' <math>i \leq \lfloor \sqrt{n} \rfloor</math> '''hacer'''
'''si''' <math>i \in \mathbb{P}</math> '''y''' <math>i \mid n</math>
<math>\{ \text{lista factores } n \} \leftarrow i</math>
<math>n \leftarrow n/i</math>
'''sino si''' <math>i < 5</math>
<math>i \leftarrow i+1</math>
'''sino'''
<math>i \leftarrow i+(2 \cdot (-1)^m \bmod 6)</math>
<math>m \leftarrow (m+1) \bmod 2</math>
<math>\{ \text{lista factores } n \} \leftarrow n</math>
'''devolver''' <math>\{ \text{lista factores } n \}</math>
[[Categoría:Libro:Implementación de algoritmos de teoría de números]]
|