Я думаю, вам просто нужно изменить порядок ваших циклов for. На самом деле вы тестируете 3 против каждого числа, затем четыре против каждого числа, затем пять против каждого числа и так далее. Если вы переключите два оператора «for», вы сравните 3,4,5 ... с первым числом, 3,4,5 ... со вторым числом, 3,4,5 ... с третий номер и т. д.
EDIT
На самом деле, вам придется сделать немного больше. Вы должны убедиться, что ни одно из 3,4,5 ... не делит число, а затем после внутреннего цикла for вставьте число, если ничего не произошло. Кроме того, вы должны ограничить свой внутренний цикл остановкой на sqrt v), потому что если ничто в sqrt (v) не делит v, то ничего кроме sqrt (v) тоже не будет (кроме v).
EDIT
На самом деле, я думаю, что я неправильно истолковал ваш код, и вы должны игнорировать то, что я сказал. Ограничьте внутренний цикл sqrt, но, кроме этого, следуйте словам BMitch.