星号盒子里的钻石。Java的数组程序cmd

星号盒子里的钻石。Java的数组程序cmd,java,Java,输入数字:“我不会给出完整的代码,因为这看起来像是家庭作业,但这里有一个您可以使用的可能算法的概要 对于网格中的每个位置(i,j),计算从菱形中心开始的距离。如果超出菱形的“半径”,则打印一个*,否则打印一个空格 如果钻石的中心是(x,y)到(i,j)位置的曼哈顿距离由以下公式给出: int distanceFromCenter = Math.abs(x - i) + Math.abs(y - j); 请注意,如果您使用的是公式,而不是曼哈顿距离,您将得到一个圆而不是钻石,尽管在7x7分辨率下

输入数字:“我不会给出完整的代码,因为这看起来像是家庭作业,但这里有一个您可以使用的可能算法的概要

对于网格中的每个位置
(i,j)
,计算从菱形中心开始的距离。如果超出菱形的“半径”,则打印一个
*
,否则打印一个空格

如果钻石的中心是
(x,y)
(i,j)
位置的曼哈顿距离由以下公式给出:

int distanceFromCenter = Math.abs(x - i) + Math.abs(y - j);

请注意,如果您使用的是公式,而不是曼哈顿距离,您将得到一个圆而不是钻石,尽管在7x7分辨率下可能很难看到这两种形状之间的差异。

请重新编写您的问题,将其显示为问题。现在看来,这不是一个如此相关的问题,很可能会被解决。你在编写程序时遇到了什么问题?我想这是一个家庭作业或什么的:P不确定曼哈顿的距离应该被计算出来,也许有一种更简单的方法,仅仅计算行数,你不这么认为吗?@BaL:这只是众多方法中的一种。我个人喜欢这种方法,因为它非常简单,只需要很少的代码行。没有复杂的表达式、边界条件或特殊情况。调整菱形的大小或位置、将其更改为另一个形状(圆形、椭圆形等)或甚至具有多个形状(可能重叠)也非常容易,所有这些都只需对代码进行很少的更改。然而,其他解决方案当然是可能的,并且具有不同的优势(例如,更好的性能)。这不是一个家庭作业。我们只是被要求为此分析程序。所以,我们只是被要求对这个项目进行研究。你能帮我吗?你能给我这个程序吗?@user1557225:谁问你的,为什么?我不想发布完整的代码,除非我知道你为什么需要它。我建议你拿出一个代码,然后我们可以帮助你纠正它!看起来很公平,不是吗?:-)
int distanceFromCenter = Math.abs(x - i) + Math.abs(y - j);