int PisanoLength(int m){
std::vector<int> v;
v.push_back(0);
v.push_back(1);
int i;
for(i = 2; ; i++){
v[i] = v[i - 1] + v[i - 2];
int a = v[i - 1] % m;
int b = v[i] % m;
if( a == 0 && b == 1)
break;
}
return (i - 2);
}
您好,我是 C++ 新手,我一直在尝试编写一个函数来计算 Pisano 周期的长度。我已经使用了这样一个事实,即一旦再次点击 0 和 1,序列就会开始重复,因此 0 之前的索引号就是 Pisano 周期长度。但是这个(我上面写的那个)显示“将堆栈跟踪转储到 pisano2.exe.stackdump”错误(pisano2.cpp 是文件名)