300 Ejemplos

Comprobador de números primos

Prime Number Checker

A continuación veremos un programa en Excel VBA ese cheques si un número es un número primo O no.

Antes de empezar: en matemáticas, un número primo es un número que tiene exactamente dos divisores numéricos distintos: 1 y él mismo. Los veinticinco números primos más pequeños son: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73 , 79, 83, 89 y 97. Por ejemplo, 8 tiene 1, 2, 4 y 8 como divisores y no es un número primo.



Situación:

cuando usar la referencia de celda absoluta

Comprobador de números primos en Excel VBA

1. Primero, declaramos tres variables. Una variable entera que llamamos divisores, una variable larga que llamamos número y una variable larga que llamamos i. Usamos variables Long aquí porque las variables Long tienen mayor capacidad que las variables Integer.

NingunodivisoresComo Entero, númeroComo Largo, IComo Largo

2. Inicializamos dos variables. Inicializamos los divisores de variables con valor 0. Usamos la función InputBox para obtener un número del usuario.

divisores = 0
number = InputBox ('Ingrese un número')

Ingrese un numero

Una vez que el usuario ha introducido un número, queremos comprobar si este número es primo o no. Recuerde, un número primo tiene exactamente dos divisores numéricos distintos: 1 y él mismo.

3. Comenzamos un ciclo For Next.

cómo asignar participantes al azar a grupos en Excel
Parai = 1Anúmero

4. Ahora viene la parte más importante del programa. Para calcular el número de divisores de un número, usamos el operador Mod. El operador Mod da el resto de una división. Por ejemplo, 7 mod 2 = 1 porque 7 dividido por 2 es igual a 3 con un resto de 1. Sólo si 'número mod i' = 0, i es un divisor de número. En este caso, queremos incrementar los divisores de variables en 1. La macro siguiente hace el truco.

SinúmeroContrai = 0Entonces
divisores = divisores + 1
Fin Si

Excel VBA verifica esto para i = 1, i = 2, i = 3, i = 4 hasta que i = número. Tenga en cuenta que i = 1 e i = número siempre son divisores de número. Solo si estos números son los únicos divisores de números, el número es un número primo.

5. No olvide cerrar el ciclo.

PróximoI

6. Si los divisores son iguales a 2, mostramos un cuadro de mensaje que dice que el número ingresado es un número primo. Si el número de divisores es mayor que 2, mostramos un cuadro de mensaje que dice que el número ingresado no es un número primo.

Sidivisores = 2Entonces
MsgBox number & 'es un número primo'
Demás
MsgBox number & 'no es un número primo'
Fin Si

7. Pruebe el programa.

Resultado para 104729:

Resultado del verificador de números primos

6/9 Completado! Obtenga más información sobre las declaraciones if then>
Ir al capítulo siguiente: Lazo



^