我在加载2D阵列时遇到问题。第一行应该是p
和q
值之间的素数。从我的代码中你可以看到我并不完全知道如何使用素数加载第一行。我一直在阅读我的文字,并没有那么有用(除非我忽略了一些东西)。只是寻找一些建议,谢谢。
#include <iostream>
int main()
}
const int ROW = 3;
const int COL = 4;
int Table[ROW][COL];
int p = 24;
int q = 42;
for (int i = 0; i < ROW; i++)
{
for (p; p < 42; p++)
{
if(p % 2 != 0)
{
if(p % 3 != 0)
{
if(p % 5 != 0)
{
if(p % 7 != 0)
{
if(p % 11 != 0)
{
Table[i][j] = p;
}
}
}
}
}
}
}
编辑:我的括号可能已关闭。这是Eclipse的复制/粘贴。
答案 0 :(得分:2)
int main()
{
const int Rows = 3; // avoid uppercase identifiers unless preprocessor macros
const int Cols = 4;
int table[Rows][Cols];
int p = 24;
int q = 42;
for (int col = 0; col < Cols; col++)
for ( ; p < q; ++p)
if (p % 2 && p % 3 && p % 5 && p % 7 && p % 11)
{
table[0][col] = p++; // ++ so not using same p next time...
break;
}
}
答案 1 :(得分:1)
在Table[i][j] = p;
之后休息一下,这样你每次只会产生一个素数。