Comprobar número primo en C#
-
Entrada de usuario para verificar números primos en un rango dado en
C#
-
Utilice el booleano
isPrime
para comprobar el número primo enC#
-
Utilice la recursividad para comprobar el número primo en
C#
En programación, escribir algoritmos para encontrar números enteros positivos mayores que 1
que no tienen otros factores excepto 1
o él mismo nos da los números primos. Este tutorial le enseñará tres soluciones para verificar números primos en C#.
Entrada de usuario para verificar números primos en un rango dado en C#
En C#, la forma más eficiente de encontrar números primos en un rango determinado es escribiendo un algoritmo usando bucles for
y condiciones if
. El siguiente programa C# puede ayudarlo a comprender los algoritmos para encontrar números primos en un rango determinado.
Ejemplo de código
using System;
class PrimeNumber {
static void checkPrime(int InputN) {
int n = 0;
// algorithm to check prime number
for (int i = 2; i < (InputN / 2 + 1); i++) {
if (InputN % i == 0) {
n++;
break;
}
}
if (n == 0) {
Console.Write(InputN + " ");
}
}
static void Main(string[] args) {
Console.WriteLine("Enter a number to check prime numbers in the given range: ");
string iN = Console.ReadLine();
int iNum = Convert.ToInt32(iN);
Console.WriteLine("Prime numbers less than " + iNum + " are: ");
// loop for finding every prime number in the given range
for (int i = 2; i < iNum + 1; i++) {
checkPrime(i);
}
}
}
Producción :
Enter a number to check prime numbers in the given range:
30
Prime numbers less than 30 are:
2 3 5 7 11 13 17 19 23 29
Utilice el booleano isPrime
para comprobar el número primo en C#
Utilice el booleano isPrime
para comprobar si el número introducido por el usuario es un número primo o no. En el caso de un número primo, el valor de isPrime
será true
en caso contrario false
.
Se llama división de prueba y consiste en un bucle for
y una condición if-else
.
Ejemplo de código:
using System;
public class PrimeNumber {
public static void Main(string[] args) {
Console.WriteLine("Enter a number: ");
var n = int.Parse(Console.ReadLine());
bool isPrime = true;
for (var i = 2; i <= Math.Sqrt(n); i++) {
if (n % i == 0) {
isPrime = false;
break;
}
}
if (isPrime == true) {
Console.WriteLine("It's a prime number.");
} else {
Console.WriteLine("It's not prime number");
}
}
}
Producción :
Enter a number: 19
It's a prime number.
El bucle for
define un entero n
como un número primo si n > 1
y n
no es divisible por i
. La salida del bucle for
será un número compuesto o un número primo.
Una condición if
verificará además si n
es divisible o no por cualquier otro número. Si es divisible, el valor de isPrime
será false
; en caso contrario, true
.
Después de ejecutar el bucle for
, el número será primo si el valor de isPrime
es true
.
Utilice la recursividad para comprobar el número primo en C#
Es una solución nativa para encontrar un número primo en C#. Un algoritmo de C# comprueba si un número entre 2
y n - 1
divide a n
.
Si encuentra algún número que divide, devolverá “false”, lo que significa n
, ya que un número definido por el usuario no es un número primo.
Ejemplo de código:
using System;
class CheckPrime {
static int i = 2;
// checks if a number is prime
static bool isPrime(int n) {
// check this number
// you can modify this number or make the user set its value thorugh `Console.Readline();`
n = 7;
// corner cases
if (n == 0 || n == 1) {
return false;
}
// Checking Prime
if (n == i)
return true;
// base cases
if (n % i == 0) {
return false;
}
i++;
return isPrime(n);
}
static void Main() {
if (isPrime(35)) {
Console.WriteLine("It is a prime number.");
} else {
Console.WriteLine("It is not a prime number.");
}
}
}
Producción :
It is a prime number.
Hassan is a Software Engineer with a well-developed set of programming skills. He uses his knowledge and writing capabilities to produce interesting-to-read technical articles.
GitHub