Это приложение получит номер "n". После получения этого числа программа должна показать n-е простое число в списке простых чисел. Например, если пользователь вводит «3», программа должна отображать «5», потому что 5 - это третье простое число, начинающееся с 2. Я знаю, что что-то не так с моим кодом, но я не знаю, в чем проблема и как я могу это исправить.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Determinar el n-esimo primo.");
long n = Convert.ToInt64(Console.ReadLine()); // N lugar de primos
long[] array = new long[n];
long c=0;
while (c >= 2)
{
if(siprimo(c++) == true)
for (long i = 0; i < n; i++)
{
array[i] = c;
}
}
Console.WriteLine(array[n - 1]);
Console.ReadLine();
}
static private bool siprimo(long x)
{
bool sp = true;
for (long k = 2; k <= x / 2; k++)
if (x % k == 0)
sp = false;
return sp;
}
}
}