新年快乐。
我正在做一个 C++ 项目,它是这样的:
for(s=1; s<=n; s++){
for (k=2; k<=n; k++) {
den[k] = 0;
den[k] = sqrt((abs(a[1][1][x]))*(abs(a[1][1][x])) + (abs(a[k][1][x]))*(abs(a[k][1][x])));
....Some magic happens here
}
}
我想不通的是如何使 a[y][y][x]
数组向第三个单元格添加一个(即它变成 a[y][y ][x+1]
) 每次发生内部循环时。
因此,例如,假设 n = 3
。
然后在内部 for 循环发生一次之后,然后将 1 添加到 x
。再次发生后,再次对x
加1。然后外循环会发生,内循环又会开始;我想再次向 x
添加另一个 +1。所以总共,我想添加六个 1(因为内循环将运行 6 次 - 每次一个)。
提前致谢。
最佳答案
我不是 100% 确定你在问什么,但我认为你正在寻找这个:
int xDelta = 0;
for(s=1; s<=n; s++){
for (k=2; k<=n; k++, xDelta++) {
den[k] = 0;
den[k] = sqrt((abs(a[1][1][x + xDelta]))*(abs(a[1][1][x + xDelta])) + (abs(a[k][1][x + xDelta]))*(abs(a[k][1][x + xDelta])));
....Some magic happens here
}
}
或者,如果您希望实际修改 x
变量本身......
for(s=1; s<=n; s++){
for (k=2; k<=n; k++, x++) {
关于c++ - 无法使 C++ 程序正确计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20914528/