我的问题是我在调用 int main() 中的 int computePattern
方法时遇到问题。我可以使用 insertNumber
方法。但我不知道如何使用computePattern方法。该方法是计算模式的数量并返回计数。模式是两个相邻的数字必须大于 7。因此,只有 5 对需要检查,因为有 10 个数字。目前输出只是有效的随机数组,但我也需要打印出模式的数量。我需要使用问题中所需的方法。
int insertNumber(int b )
{
int a = rand()%10+1;
return a;
}
int computePattern(int* inArray, int size )
{
int patterns=0;
for(int z=0;z<size;z=z+2)
{
if(inArray[z]+inArray[z+1]>7)
{
patterns ++ ;
}
}
return patterns;
}
int main()
{
int arrays[10];
srand(time(0));
for ( int b=0; b<10 ; b++)
{
arrays[b] = insertNumber(b);
}
cout << "Arrays";
for ( int c= 0; c<10; c++)
{
cout << " " ;
cout << arrays[c];
}
int patterns =computePattern(arrays,10);
cout<<endl;
cout << "Patterns" <<patterns;
}
最佳答案
computePattern 中的数组仍未初始化。因此,它将在内存中包含随机变量,这会扰乱您的计算路径。
您也许应该将该函数修改为intcomputePattern(int z, int array[])
。然后从主作用域传递数组
。
关于c++ - 在 C++ 中使用数组调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38636113/