有一些我认为可以得到的数据,是否可以获得所需范围内的指数总和?
int pointX[LENGHT] = {0,531,710,1067,1537,1903,2121,2434,2738,3031,...};
说我希望将每个索引4的数量值= 1903作为int。 所以...我希望有类似的东西:
x0 = 6
xN1 = 5
(xN1 - 来自被查看号码的x-1位置)
xN2 = 4
xN3 = 3
xN4 = 2
(对于数组中的正数)
x1 = 7
x2 = 8
......等等。 所以总和我可以:
sum = xN4 + xN3 + xN2 + xN1 + x + x1 + x2 + x3 + x4;
更新:
在上面的数组0中有索引0,531有索引1和soo on。现在如何将索引导入int?我想将531的索引放入
int x;
怎么做?
答案 0 :(得分:2)
要查找数组中元素的索引(例如531),可以使用auto result1 = std::find(std::begin(pointX), std::end(pointX), 531);
:
int index = (result1 == std::end(pointX)) ? -1 : std::begin(pointX) - result1;
这将返回一个迭代器到数组中第一个出现的531,你可以通过
获得索引(如果找不到元素,则返回-1)enum AIState { Asleep, Idling, Chasing, Fleeing, HavingLunch };
PS:这回答了你的更新中的问题,但是,我仍然不明白其余问题是什么(没有冒犯,如果你的英语不太好,只要继续尝试;)。