En este ejemplo, aprenderá a verificar si un número entero ingresado por el usuario es un número primo o no.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación en C:
- C if … else Statement
- C para bucle
- C romper y continuar
Un número primo es un número entero positivo que solo es divisible por 1
y por sí mismo. Por ejemplo: 2, 3, 5, 7, 11, 13, 17
Programa para verificar el número primo
#include int main() ( int n, i, flag = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 2; i <= n / 2; ++i) ( // condition for non-prime if (n % i == 0) ( flag = 1; break; ) ) if (n == 1) ( printf("1 is neither prime nor composite."); ) else ( if (flag == 0) printf("%d is a prime number.", n); else printf("%d is not a prime number.", n); ) return 0; )
Salida
Ingrese un entero positivo: 29 29 es un número primo.
En el programa, un bucle for se itera de i = 2
a i < n/2
.
En cada iteración, si n es perfectamente divisible por i se verifica usando:
if (n % i == 0) ( )
Si n es perfectamente divisible por i, n no es un número primo. En este caso, el indicador se establece en 1 y el bucle se termina utilizando la break
instrucción.
Después del ciclo, si n es un número primo, el indicador seguirá siendo 0. Sin embargo, si n es un número no primo, el indicador será 1.
Visite esta página para aprender cómo puede imprimir todos los números primos entre dos intervalos.