Кажется, что вы ошибаетесь в логике.
Насколько я понимаю, вы должны печатать простые числа между двумя числами.
Но в вашем коде есть логические ошибки.
1) Код не считает 2 и 3 простыми числами.
Скажите, m = 1
, n = 10
. Для j = 2, 3
внутренний цикл не будет выполняться даже один раз. Следовательно, вывод не будет отображаться как пользователь.
2) else cout<<j<<"\n";
оператор размещен неправильно, так как это приведет к тому, что простые числа будут напечатаны несколько раз, а также некоторые составные числа.
Пример:
Для j = 11
этот код будет напечатан 11
дважды (for i = 2, 3
).
Для j = 15
этот код будет напечатан 15
один раз (for i = 2
), хотя это составное число.