Мне было интересно, сталкивался ли кто-нибудь с какими-либо сценариями MATLAB, которые начинаются с 2 и проверяют, является ли 2 простым. Если 2 является простым числом, он прибавит единицу к 2 и проверит, является ли 3 простым. Этот процесс будет повторяться рекурсивно.
Я предполагаю, что код будет включать серию циклов while
и множество команд rem(a,b)
.
Просто идея у меня была. Есть предположения?
Медленнее, чем сито, но больше похоже на метод, описанный в вашем вопросе. проверьте, что 2 является простым числом, а затем игнорируйте все большие четные числа. Начните с 3 и добавляйте каждый раз по 2: 3, 5, 7, 9, 11, ...
С MATLAB это тривиально, просто вызовите
isprime
в своем списке кандидатов. В противном случае вы спрашиваете, как реализовать Сито Эратосфена, который является слишком широким, не показывая никаких попыток решения, и это хорошо задокументированная проблема, если вы проведете некоторое исследование.