gpt4 book ai didi

c++ - MAgic Square 函数 C++

转载 作者:行者123 更新时间:2023-11-27 22:29:12 26 4
gpt4 key购买 nike

这是我的幻方的最后一个函数,出于某种原因它给我一个错误,有“'[int]' for array subscript”但我不知道那是什么意思,如果有人可以帮助解释什么我要做。

bool Square::is_magic()
{
for (i = 0; i < size-1; i++)
{
if (sum_row[i] != sum_row[i+1])
return false;

if (sum_col[i] != sum_col[i+1])
return false;
}

if (sum_row[0] != sum_col[0])
return false;

if (sum_row[0] != sum_maindiag[0])
return false;

if (sum_row[0] != sum_other[0])
return false;

return true;
}

最佳答案

好吧,每个人都有一段时间是新手。我真的建议你阅读一两本专注于 C++ 的书籍。 (我个人是通过“21 天学会 c++”学习编程的,很多人提示但这对我来说是一个好的开始)。

还有代码。不确定它是否是您需要的,它应该是这样的:

bool Square::is_magic()
{
int i;
for (i = 0; i < size-1; i++)
{
if (sum_row[i] != sum_row[i+1])
return false;

if (sum_col[i] != sum_col[i+1])
return false;
}

if (sum_row[0] != sum_col[0])
return false;

if (sum_row[0] != sum_maindiag[0])
return false;

if (sum_row[0] != sum_other[0])
return false;

return true;

}

一些评论:

  1. if,for,while 语句后的 1 个命令不需要括号

  2. 建议使用 if -> else if -> else。在这里这无关紧要,因为一旦发现不正确的地方就会跳出功能,但如果您继续编写代码,即使没有必要,也会检查其他语句。

  3. 习惯某种风格,制作自己的风格或复制别人的风格。我个人是这样使用括号的:

    如果(某物!= 某物){ doSomeNastyThings(); 做更多();

祝你好运..

编辑:为语句添加变量声明 int,更新括号(聪明的想法,因为最后 3 个 if-s 没有使用索引)

关于c++ - MAgic Square 函数 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4975365/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com