помогите оптимизировать код на С++

программирование математика код

программа для создания простых чисел
#define n 1000

void m()
{
int mas[n] = {2,3,5,7,11};

int m = 4;

for(int i=12; i<n; i++)
for(int j=0; j<m; j++)
{

if(i % mas[j]==0)break;
else if(j==m-1)
{
m++;
mas[m]=i;
break;
}
}
}
Ответы:
можно попробовать так
строчек меньше, скорость надо проверить.
#define n    1000
void m() {
int mas[n] = {2};
int m = 1;
bool ok;
for (int i = mas[m - 1] + 1; i < n; i++) {
ok = false;
for (int j = 0; j < m; j++) {
if (mas[j] * mas[j] > i) {
break;
}
if (i % mas[j]==0) {
ok = true;
break;
}
}
if (ok) {
mas[++m] = i;
}
   }
}


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.