cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 3665|回复: 18

[求助] 大型程序推箱子 请教一下

[复制链接]
发表于 2010-8-23 15:05:27 | 显示全部楼层 |阅读模式
推箱子中,假设有3个箱子,坐标是A,B   E,F    M,N,如何检验箱子是否重合?发上代码,我会把代码插在合适的地方的
 楼主| 发表于 2010-8-23 15:06:01 | 显示全部楼层
不知道怎么加悬赏,反正没钱,就不加了
发表于 2010-8-23 15:10:45 | 显示全部楼层
If A=M and B=N then 重合
 楼主| 发表于 2010-8-23 15:57:38 | 显示全部楼层
不是这个意思啦,是如何处理使他们不重合
发表于 2010-8-23 16:07:35 | 显示全部楼层
randint(m,n)->a
Lbl 0
randint(m,n)->c
if a=c
then
goto 0
ifend
发表于 2010-8-23 16:08:36 | 显示全部楼层
If A=M and B=N then
Stop
text(如果有的话)“错误:……”(不支持中文的话就是“Error:……”)
Ifend
 楼主| 发表于 2010-8-23 16:18:20 | 显示全部楼层
5#,你确定你的可以OK吗?使重合的箱子不重合?如果是4个呢?5个呢?,而且那个什么randin什么意思
发表于 2010-8-23 16:20:44 | 显示全部楼层
我说的只是nspire上的。。不知道你用什么计算器
如果是4个5个那就把M和N改成那个箱子的坐标就可以了
发表于 2010-8-23 16:21:03 | 显示全部楼层
不过其他计算器应该可以
只要有stop函数
发表于 2010-8-23 17:26:49 | 显示全部楼层
至于stop
我一般在最后建一个标签,然后goto
 楼主| 发表于 2010-8-24 16:04:24 | 显示全部楼层
IMATH,你那个貌似不管用。
我在次重申意思:先检验两个或多个箱子是否重合,如果重合,就使它们不重合,不重合就继续的代码
发表于 2010-8-24 23:02:41 | 显示全部楼层
至于stop
我一般在最后建一个标签,然后goto
imath 发表于 2010-8-23 17:26
也可以。和stop是同样的效果
发表于 2010-8-24 23:09:21 | 显示全部楼层
IMATH,你那个貌似不管用。
我在次重申意思:先检验两个或多个箱子是否重合,如果重合,就使它们不重合,不重合就继续的代码
zhuloupu4 发表于 2010-8-24 16:04
原来你要说的是箱子是否重合啊。。
那就是:
If A=M and B=N  or A=(某个箱子的横坐标) or B=(某个箱子的纵坐标)………… then(你要检验几个箱子不重合就写几个这东西)
randint(下限,上限)→(某个箱子的横坐标)
randint(下限,上限)→(某个箱子的纵坐标)
else
goto a
Ifend
Lbl a
 楼主| 发表于 2010-8-25 14:00:45 | 显示全部楼层
下限和上限是多少
 楼主| 发表于 2010-8-25 14:04:11 | 显示全部楼层
难道箱子要重新显示吗?我的意思是说如果箱子重合就返回一格。
比如说有两个箱子分别是3,4   4,4   结果3 ,4向右一推与4,4重合了,这时检验出来了将其中一个箱子显示到3,4,而且两个箱子重合的场景不会出现,只会出现如下:
当3,4冲向4,4时,被4,4顶住了。无法过去。
向楼上那种我也会啊。就是我说的这种要考虑多方向,所以复杂
发表于 2010-8-28 15:13:07 | 显示全部楼层
情况枚举一下
人在x,y,若箱子在x+1,y,则如果x+2,y是箱子或墙则拒绝操作
………………同理写4个方向
 楼主| 发表于 2010-8-31 17:08:12 | 显示全部楼层
算了,只好编那种碰到箱子就结束游戏的那种了
发表于 2010-8-31 20:05:41 | 显示全部楼层
那个微分方程的程序编好了没?
 楼主| 发表于 2010-9-2 12:50:30 | 显示全部楼层
没有,我现在理念不清楚了。
我在想编的类型是ay+by'=c的时候,如果a.b.c又分别是fx/gx/vx三个函数
那就更麻烦了。。。
所以我决定不编了
IMATH,这个艰巨的任务还是交给你了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-4-20 18:04 , Processed in 0.085454 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表