问题标签 [magic-square]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1195 浏览

matlab - 在 Matlab 中为幻方创建函数

我在 matlab 中为大小为 n 的幻方创建了一个函数,使用 zeros() 命令初始化,并使用迭代器 i 进行了 for 循环。

我得到的输出是正确的,但我无法弄清楚如何解决对角线也就是该位置是否超出行和列的界限的问题。在幻方(5)中,这个数字是 16。

魔方(5)

矩阵 =

0 投票
1 回答
1732 浏览

r - 生成随机幻方

我想知道如何创建一个具有随机自然数的矩阵,但每列的总和也等于每行的总和以及对角线总和。

我的意思是您创建一个函数,通过选择行、列和对角线的维度和总和,可以为您提供如上所述的方阵,但每行和列上的数字不同。

有谁知道如何做到这一点?

我想自己创建一个没有任何包的函数来完全理解程序。

0 投票
1 回答
492 浏览

r - 半魔方

我必须创建生成随机 NxN 幻方的函数,其中所有列和行的总和等于 S。变量 N 和 S 必须是用户输入。我已经创建了在满足给定条件时绘制正方形并打破循环的函数。它适用于像 3x3 或 4x4 这样的小方块,但对于较大的方块来说效率极低。矩阵内的所有数字都必须是整数,对角线不需要相等的行和。任何建议如何解决这个问题?

0 投票
0 回答
1473 浏览

c++ - 魔方计算二维数组 C++

所以我需要用这些函数编写代码。checkMatrix 必须是布尔值,getData 必须传递一维数组。如何使用 2D 数组检查幻方?说明:编写一个程序,提示用户输入整数以填充构建表格的 3 x 3 二维数组。输入数据后,程序会检查表格是否形成魔方。完成后,让程序提示用户查看他们是否要测试另一个方块并相应地循环返回。注意:您的解决方案应验证程序的输入是否来自错误输入。这意味着您的程序会检查输入的数据是否为数字,并且在 1 和 9 的范围内(包括 1 和 9),并且不能输入重复的数据。暗示:一维数组可用于记录已分配给幻方的数字。程序样式= 程序必须包含执行给定描述中的操作的以下功能。使用给定的函数名称。所有数据必须通过值或引用传递给所需的函数;不允许使用全局变量。Function Description= main= 这个函数解释魔方方向,组织对其他函数的调用,并报告最终结果。getData= 此函数获取并验证用户输入的 9 位数字以填充 3 x 3 表格。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。程序样式= 程序必须包含执行给定描述中的操作的以下功能。使用给定的函数名称。所有数据必须通过值或引用传递给所需的函数;不允许使用全局变量。Function Description= main= 这个函数解释魔方方向,组织对其他函数的调用,并报告最终结果。getData= 此函数获取并验证用户输入的 9 位数字以填充 3 x 3 表格。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。程序样式= 程序必须包含执行给定描述中的操作的以下功能。使用给定的函数名称。所有数据必须通过值或引用传递给所需的函数;不允许使用全局变量。Function Description= main= 这个函数解释魔方方向,组织对其他函数的调用,并报告最终结果。getData= 此函数获取并验证用户输入的 9 位数字以填充 3 x 3 表格。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。所有数据必须通过值或引用传递给所需的函数;不允许使用全局变量。Function Description= main= 这个函数解释魔方方向,组织对其他函数的调用,并报告最终结果。getData= 此函数获取并验证用户输入的 9 位数字以填充 3 x 3 表格。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。所有数据必须通过值或引用传递给所需的函数;不允许使用全局变量。Function Description= main= 这个函数解释魔方方向,组织对其他函数的调用,并报告最终结果。getData= 此函数获取并验证用户输入的 9 位数字以填充 3 x 3 表格。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。必须实现数组数据的传递。checkMatrix= 这个函数通过用户输入的数组数据矩阵来判断它是否是一个幻方序列,并返回一个布尔值作为测试结果。

0 投票
1 回答
172 浏览

c - Magic Square Code Help,想知道它将数字向下移动的位置 C 语言编程

我想知道是否有人可以告诉我代码将数字放在哪里。假设我想要一个 3x3 幻方。输出将是:

https://i.stack.imgur.com/BYTSn.png

我想知道它会在代码中的哪个位置将 4 向下移动,因为 1 已经存在。7 下移也是一样。原则是你每次向上 1 向右 1,如果那里有东西你向下移动并继续前进。

0 投票
0 回答
172 浏览

algorithm - 构造 4 x 4 魔方,位置固定为“1”

我发现生成 4 x 4 魔方的方法给了我一个结果,其中数字“1”位于正方形的角落。我们如何将其扩展到为数字“1”的固定位置生成幻方的方法?

数字“1”可以在 16 个不同的位置(单元格)中。如果我们命名单元格,从左上角开始:1, 2, 3,4, 5, ...,并且数字“1”在第 $i^th$ 单元格处,那么我们如何填充其他单元格做一个魔方?

0 投票
1 回答
39 浏览

python-3.x - 无法将字符串转换为整数列表

我正在尝试在 python 中制作一个程序来识别正方形是否是幻方,并且我无法将用户输入放入列表中。我知道我的代码可能会更有效率,但我对 python 很陌生。

我不断收到“int”对象没有“append”属性的错误消息。我尝试了很多在这个网站上找到的不同方法,但由于各种原因,它们都没有奏效。我对所有建议持开放态度,任何事情都会对我有所帮助。谢谢

0 投票
3 回答
243 浏览

c - 为什么我的程序在第一个 for 循环之后结束?

我正在编写一个程序来计算一个幻方,但我无法让输入正常工作。我很确定我正在用值填充数组,但它在前两个 for 循环之后结束。后两个应该打印数组,但程序在输入数据后立即结束。我是否将循环放在错误的位置?

我的输入是:

我的预期输出是

我得到的是:

0 投票
3 回答
10675 浏览

python - NumPy 相当于 Matlab 的 magic()

在 Ocatave / Matlab 中,我可以使用magic()得到一个幻方,例如,

定义:幻方是一个 N×N 的数字网格,其中每行、每列和主对角线中的条目总和为相同的数字(等于N(N^2+1)/2)。

如何使用 NumPy 生成相同的内容?

0 投票
2 回答
100 浏览

java - 魔方最终值始终为真

对于课堂,我们必须做一个魔方。我的代码有点工作,但它做了多个正方形,最后一个总是返回 0,这就是魔方的工作原理。在此处输入图像描述

这是我检查的方式

该代码大部分都有效,但如果我有一个系列,由于某种原因它总是返回 true。下面设置的数字应该返回 false 但返回 true

6 32 2 34 35 1
7 11 27 28 8 30
19 14 16 15 23 24
18 20 22 21 17 13
25 29 10 9 26 12
36 5 33 4 3 31

抱歉格式错误,我对网站还是很陌生。谢谢,加罗斯