Tecnología

Inicio

Cómo utilizar Excel para encontrar los factores primos

Cómo utilizar Excel para encontrar los factores primos


Un número primo tiene sólo a sí mismo y el número 1 como divisores. Por ejemplo, 13 es un número primo porque sólo tiene 1 y 13 como divisores. Cada número se puede escribir como un producto de números primos. Hay muchas herramientas para averiguar los números primos, incluyendo árboles de decisión. Usted puede agregar fácilmente una macro de Excel 2007 para sustituir parte del proceso de toma de árbol. Una macro es una herramienta que permite a la costumbre de Excel con sus propios botones: en este caso, un botón que calcula factores. Una vez que haya agregado la macro, sólo tiene que enchufar en el número y Excel calculará los factores.

Instrucciones

1 Cierre todos los libros existentes y empezar una nueva hoja de cálculo de Excel. Pulse la tecla "ALT" más "F11" para iniciar el Editor de Visual Basic.

2 Abrir un libro haciendo doble clic en un libro en el menú VBAProject en la parte superior izquierda de la pantalla.

3 Corte y pegue el siguiente código en el libro vacío:

GetFactors sub ()

Dim Count As Integer
Dim NumToFactor As Single 'Integer limits to < 32768
Dim Factor As Single
Dim y As Single
Dim IntCheck As Single

Count = 0
Hacer
NumToFactor = _
Application.InputBox (desde el símbolo: = & quot; & quot tipo entero ;, Tipo: = 1)
'Forzar la entrada de números enteros mayores que 0.
IntCheck = NumToFactor - Int (NumToFactor)
Si NumToFactor = 0 Entonces
Exit Sub
"Cancelar es 0 - permitir Cancelar.
ElseIf NumToFactor & lt; 1 A continuación,
MsgBox & quot; Por favor, introduzca un número entero mayor que cero. & Quot;
ElseIf IntCheck> 0 Then
MsgBox & quot; Por favor, introduzca un número entero - sin decimales. & Quot;
Terminara si
'Bucle hasta la entrada de número entero mayor que 0.
Mientras NumToFactor Loop & lt; 0 = O IntCheck> 0
Para y = 1 Para NumToFactor
'Mensaje Poner en la barra de estado que indica el número entero que se comprueba.
Application.StatusBar = & quot; Comprobación & quot; &amperio; y
Factor = NumToFactor Mod y
"Determinar si el resultado de la división con Mod es sin _
resto y por lo tanto un & quot; factor de & quot ;.
Si Factor = 0 Entonces
'Introducir el factor en una columna empezando por la celda activa.
ActiveCell.Offset (Conde, 0) .Value = y
"Aumentar la cantidad a compensar para el siguiente valor.
Count = count + 1
Terminara si
Siguiente
'Restaurar la barra de estado.
Application.StatusBar = & quot; & quot Ready;

End Sub

Sub GetPrime ()

Dim Count As Integer
Dim BegNum As Single 'Integer limits to < 32768
Dim EndNum As Single
Dim Prime As Single
Dim flag As Integer
Dim IntCheck As Single
Count = 0

Hacer
BegNum = _
Application.InputBox (desde el símbolo: = & quot; Tipo número que empieza ;, & quot Tipo:. = 1)
'Forzar la entrada de números enteros mayores que 0.
IntCheck = BegNum - Int (BegNum)
Si BegNum = 0 Entonces
Exit Sub
"Cancelar es 0 - permitir Cancelar.
ElseIf BegNum & lt; 1 A continuación,
MsgBox & quot; Por favor, introduzca un número entero mayor que cero. & Quot;
ElseIf IntCheck> 0 Then
MsgBox & quot; Por favor, introduzca un número entero - sin decimales. & Quot;
Terminara si
'Bucle hasta la entrada de número entero mayor que 0.
Mientras BegNum Loop & lt; 0 = O IntCheck> 0

Hacer
EndNum = _
Application.InputBox (desde el símbolo:. = & Quot; Tipo número final & quot ;, Tipo: = 1)
'Forzar la entrada de números enteros mayores que 0.
IntCheck = EndNum - Int (EndNum)
Si EndNum = 0 Entonces
Exit Sub
"Cancelar es 0 - permitir Cancelar.
ElseIf EndNum & lt; Entonces BegNum
MsgBox & quot; Por favor, introduzca un número entero mayor que & quot; &amperio; BegNum
ElseIf EndNum & lt; 1 A continuación,
MsgBox & quot; Por favor, introduzca un número entero mayor que cero. & Quot;
ElseIf IntCheck> 0 Then
MsgBox & quot; Por favor, introduzca un número entero - sin decimales. & Quot;
Terminara si
'Bucle hasta la entrada de número entero mayor que 0.
Mientras EndNum Loop & lt; BegNum O EndNum & lt; 0 = O IntCheck> 0

Para y = BegNum Para EndNum
bandera = 0
z = 1
Hacer hasta la bandera = 1 O z = y + 1
"Poner mensaje en la barra de estado que indica el número entero y _
divisor en cada bucle.
Application.StatusBar = y & amp; & Quot; / & Quot; &amperio; z
Primer = y z Mod
Si el Primer = 0 y Z & lt;> Y y Z & lt;> 1 Entonces
bandera = 1
Terminara si
z = z + 1
Lazo

Si la bandera = 0 Entonces
'Introducir el factor en una columna empezando por la celda activa.
ActiveCell.Offset (Conde, 0) .Value = y
"Aumentar la cantidad a compensar para el siguiente valor.
Count = count + 1
Terminara si
Siguiente y
'Restaurar la barra de estado.
Application.StatusBar = & quot; & quot Ready;

End Sub

4 Haga clic en "Archivo" y luego elegir la opción "Cerrar y volver a Microsoft Excel".

5 Haga clic en el botón de Microsoft Office en Excel. Haga clic en "Opciones de Excel", "personalizar" y luego seleccione "Macros" en los "Comandos disponibles".

6 En la lista, haga clic en los "ThisWorkbook.GetFactors," macro y haga clic en "Añadir". Haga clic en Aceptar." Esto agrega la macro a la barra de herramientas de acceso rápido en la parte superior izquierda de Excel.

7 Seleccione la celda en la que desea que los datos comienzan.

8 Haga clic en el botón de macro en la barra de herramientas de acceso rápido. Introduzca el número al que le gustaría encontrar factores primos para. Excel devolverá una lista de todos los factores (entre ellos el primer y no prime) en la columna seleccionada. Por ejemplo, los factores de 30 son 1, 2, 3, 5, 6, 10, 15 y 30.

9 Seleccione los números primos de la lista dada. Los números primos en la lista son 2,3 y 5. Estos son los factores principales para el número dado.

Consejos y advertencias

  • Que Excel calcule las divisiones para que mediante la adición de las ecuaciones correspondientes a las células que devuelven los factores, en lugar de calcular a mano.