黑马程序员技术交流社区
标题:
有关交通灯管理系统的逻辑问题
[打印本页]
作者:
何俊森
时间:
2013-6-2 15:14
标题:
有关交通灯管理系统的逻辑问题
本帖最后由 何俊森 于 2013-6-2 21:07 编辑
张老师的那个交通灯系统一直不是很明白
E2W("W2E", "E2S", false), E2S("W2N", "S2N", false), S2N("N2S", "S2W", false), S2W(
"N2E", "E2W", false),
W2E(null, null, false), W2N(null, null, false), N2S(
null, null, false), N2E(null, null, false),
E2N(null, null, true), N2W(
null, null, true), W2S(null, null, true), S2E(null, null, true);
为什么E2W下一个灯是W2E,W2E下一个灯是E2S...E2W,还有不考虑黄灯的话,不是只有8个灯吗?
捕获.PNG
(128.68 KB, 下载次数: 0)
下载附件
2013-6-2 15:13 上传
作者:
袁梦希
时间:
2013-6-2 15:50
本帖最后由 袁梦希 于 2013-6-2 15:52 编辑
首先你这个问题就提错了,E2W对应的灯是W2E,E2W的下一个灯是E2S。
我来给你解释一下枚举中的对象吧:
某灯("对应的灯","下一个灯"," 先暂时让灯是黑的")
这是一个灯的对象。
首先我们分析,不说什么E呀、W呀、S呀,说实话,我看这些字母我也反应不过来,好好的程序非要用英文编写,擦了个DJ。
因为交通灯都是有对应的灯,对应的灯都是同时亮,同时灭的,比如,南和北的交通灯,两边的司机都应该同时看到灯变红或变绿,
所以八个方向上只考虑了四个灯,其他灯都是对应的,那么这四个灯都是什么呢?
我们可以对这四个灯进行分析:
我们先从东边分析,从东边过来的车有两条路线可以走,一个是左转一个是直行,在这里呢不考虑右转弯,因为右转弯是一直可以通行的。也不用纠结这问题,这是交通规定的。
东到西的对应的灯肯定就是西到东,东到西的下一个灯肯定是左转弯的,就是所谓的东到南,那么东到南的方向肯定有对应的灯,东到南对应的灯是西到北,可以用大脑想想,不要考虑老张那些字母。
我曾经过马路,认为交通灯就直行的方向才有灯呢,结果那天我差点被车撞了,我就看那车从我后面的方向过来了。
所以按照我的思路,直接就能把南到北,和南左转的方向,也就是南到西方向的灯推出来,自己推吧。
加油楼主
作者:
袁梦希
时间:
2013-6-2 15:53
然后你根据我的方法,对照着那些英文都一一添加好就可以了,希望可以帮到你,如果不会继续追问。
作者:
萌小子
时间:
2013-6-2 16:04
字母是对方向的简写:南S(South),北N(North),东E(East),西W(West),S2N就是南到北的灯,2表示to。
你说的八个灯是少了四个转弯的灯,张老师把所有的情况都划出来了,包括右转弯。因为这个是文字模拟的,所以需要使用提示文字,右转弯当然也需要提示出来了,比如:N2E,,S2W等
作者:
袁梦希
时间:
2013-6-3 11:50
唉 我就没分了
作者:
何俊森
时间:
2013-6-3 15:35
袁梦希 发表于 2013-6-3 11:50
唉 我就没分了
{:3_46:}什么没分?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2