Necesito escribir una función que toma como argumento el número (n) y de retorno (como cadena) el número más bajo disponible que se puede dividir todos los números de 1 a n. ejemplo, si n=4, entonces la función devolverá 12 como 12/4 12/2 12/3 12/1 son números enteros.
he escrito una función para la que funciona bien cuando los números son menores de 19.. por encima de los 19 el tiempo de computación se está volviendo mucho más. alguien puede darme una sugerencia de cómo mejorar el mecanismo de esta función para hacerlo más rápido
public static string Smallest(int n)
{
int good = 0;//will hold number of times we got divide with no remianders
int num = n;//smallest possible number is n
while (true)
{
good = 0;
for (int i=n; i>=1; i--)
{
if (num % i ==0) good++;//meaning we got zero remainder for the divide
if (good == n) return num.ToString();//num of times we got zero remainders == n.
}
num++;
}
}