基本上,对于一个学校项目,我必须通过编写一个Java应用程序来解决以下问题。
它大约是3个士兵: C,H和L。所有的都被随机绘制在2D图上,其中0=
胜利者将是最后一个留在战场上的士兵。当一个士兵死了,他会从图中删除,所以他的位置变成了(-1,-1)除了C之外,即使他死了,他也会留在相同的位置。另外,如果一个士兵杀死了另一个士兵,杀人犯就会在战场上占据死亡士兵的位置(图),因此坐标会发生变化。
程序需要打印获胜者,以及每次士兵牺牲的时间(例如"C已被H杀死“,"H已被L杀死”,"L是胜利的“)。
我开始这个问题的方式是创建两个类(一个用于士兵及其属性,另一个用于显示战场)。学校建议我们导入:'java.awt.geom.Point2D‘表示战场和坐标,'java.util.Random’创建随机坐标,以便将士兵放到战场上。我认为需要编写一个算法来计算出哪个士兵到达另一个士兵的速度最快,哪个士兵幸存下来。
然而,现在我被困住了,在给每个士兵变量分配了字符串名和双精度值之后,我不知道该去哪里。请帮帮我!
发布于 2015-11-06 01:02:04
你没有告诉我们很多关于你实际上是如何表示数据的。
我的想法是,您应该有一个具有维度(max_x,max_y)的Battlefield类,一个士兵数组,以及一个在黑板上士兵位置绘制战场和每个士兵的名字的显示方法(如果不是负数)。
士兵们会有一个名字和位置。构造器将接受一个名称和位置,这是Battlefield可能会生成的(不希望两个士兵重叠在一起,等等)。
当然,如果不知道攻击实际上是如何工作的,战斗的胜利条件是如何解决的,等等,就很难提供更多的东西。
https://stackoverflow.com/questions/33550187
复制相似问题