C#: Calcular los primeros n números de Mersenne

Tiempo de lectura: < 1 minuto

La serie de números de Mersenne es una secuencia de números primos donde cada término se obtiene elevando 2 a una potencia y restando 1. Sin embargo, no todos los términos generados por esta fórmula son primos. Algunos de los números de Mersenne conocidos como primos son: 3, 7, 31, 127, 8191, ...

//Usings.
using System

/// <summary>
/// Calcula los primeros n números de Mersenne.
/// </summary>
/// <param name="n">La cantidad de números de Mersenne a calcular.</param>
/// <returns>Un array que contiene los primeros n números de Mersenne.</returns>
public static long[] MersenneNumbers(int n)
{
	if (n <= 0)
	{
		throw new ArgumentException("La cantidad de números debe ser mayor que cero.", nameof(n));
	}

	long[] mersenne = new long[n];

	for (int i = 0; i < n; i++)
	{
		mersenne[i] = (long)Math.Pow(2, i) - 1;
	}

	return mersenne;
}

Deja un comentario