Проект euler 60: проблема кода
<pre> using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Prime_pair_sets { class Program { static void Main(string[] args) { int mc = 5; List<int> primes = new List<int>(); int test = 2; int count = 0; int test2 = 0; while(primes.Count < mc) { test = MyMath.Here.NextPrime(test); int a = 0; foreach(int el in primes) { if(MyMath.Here.IsPrime(test*Convert.ToInt32(Math.Pow(10,el.ToString().Length))+el)&& MyMath.Here.IsPrime(el*Convert.ToInt32(Math.Pow(10,test.ToString().Length)) + test)) { a++; } else { break; } } if(a == primes.Count) { test2 = test; primes.Add(test); count++; } } foreach(int a in primes) { Console.WriteLine(a); } } } }
Как проверить все значения possbile и выбрать то, которое имеет наименьшую сумму?
в коде NextPrime и IsPrime работают отлично они не являются проблемой
Что я уже пробовал:
Я попытался получить 4 нюймбера в Примере .Изменив "mc" в коде на 4, Вы можете получить эти числа. когда это 5 код не работает...
Richard MacCutchan
Вы не объяснили, что должен делать код, и не объяснили, что не работает. Кроме того, следующее утверждение не имеет большого смысла:
if(MyMath.Here.IsPrime(test*Convert.ToInt32(Math.Pow(10,el.ToString().Length))+el)&& MyMath.Here.IsPrime(el*Convert.ToInt32(Math.Pow(10,test.ToString().Length)) + test))
Почему вы обращаетесь test
к строке, а затем вычислить что-то на основе длины строки?
Member 13294470
это должно быть в одном ряду, и это делает Сансе
Member 13294470
если у вас есть, например, 3 и 109, вы должны проверить, являются ли 1093 и 3109 простыми числами или нет.
Richard MacCutchan
Ну, вам нужно будет использовать свой отладчик, чтобы выяснить, что происходит, так как ваш код является неполным, поэтому мы не можем его протестировать.
Member 13294470
код работает .
проблема в том, что идея, я думаю, неправильный алгоритм.
у вас есть факбук? Я пришлю Вам NextPrime и IsPrime
Richard MacCutchan
Я не хочу, чтобы вы присылали его мне. Это открытый форум, поэтому вся информация должна содержаться в вашем вопросе.