A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 田斌 中级黑马   /  2012-3-24 13:34  /  3138 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

亲们,交通灯系统为什么要考虑向右转的灯,而且直行的灯的下一个灯为什么是左转的灯?比如S2W的相反方向为什么是N2E,他的下一个为什么是E2W,彻底的晕了。。。

12 个回复

倒序浏览
系统是根据需求写的,需求分析来自现实中,现实中的路口有大的有小的,小的路口就不用考虑右转弯的灯了,但是大的路口就要考虑了。
java只是一种语言,只是把现实中的东西讲给计算机听,所以需求分析其实是软件开发最重要的。想要了解一个系统,最好把模型抽象出来,根据现实抽象出模型来就可以随便用哪种语言来描述问题了!


所以你不要在程序中纠结这种问题,在实际中来考虑。毕竟语言知识中工具。
回复 使用道具 举报
所以写程序前先画画图什么的,用现实的语言来描述一下,再用java翻译出来!在软件开发过程中其实最牛的不是写代码的而是搞需求分析搞总体设计的人。
回复 使用道具 举报
庞子华 发表于 2012-3-24 13:58
所以写程序前先画画图什么的,用现实的语言来描述一下,再用java翻译出来!在软件开发过程中其实最牛的不是 ...

谢谢:handshake
回复 使用道具 举报

老师的图画的很清楚了,每对颜色的路线就是相反方向的路线,

S2N("N2S","S2W",false),S2W("N2E","E2W",false),E2W("W2E","E2S",false),E2S("W2N","S2N",false),
/*下面元素表示与上面的元素的相反方向的灯,它们的“相反方向灯”和“下一个灯”应忽略不计!*/
N2S(null,null,false),      N2E(null,null,false),        W2E(null,null,false),        W2N(null,null,false),

右拐弯不受红绿灯的控制不考虑,把剩下的8路线分为对应的四组,直,弯,直,弯,四组轮着来
回复 使用道具 举报
1.直行下一个是左转,是系统要求,客户提供的。
2.为什么S2W的相反方向为什么是N2E:相反方向,在这里指的是2个方向的灯可以同时绿的意思。就像从南到北和从北到南的车辆可以同时进行,不会撞车,让他们一起行驶提升系统的性能。S2W和N2E是两个左转方向,他们两个一起行驶也是不会撞车的,你自己画画图,或者蹲马路崖子上看1会就明白了。
回复 使用道具 举报
就像张老师所说的,太不注意生活细节了,直行灯的下一个灯就是左转弯的灯。S2W是由南往西,相反方向肯定是由北往东(N2E)啊,仔细看一下张老师画的那张交通灯图。假如你准备你是从十字路口的南边来的,准备去十字路口的西边,也就是S2W的行驶,属于左转弯。这时允许向左转弯的绿灯亮了,你就可以S2W行驶了,也就在左转弯灯为绿灯时, 同时由东往西和由西往东的交通灯也为绿灯。
回复 使用道具 举报

RE: 交通灯疑惑

就像张老师所说的,太不注意生活细节了,直行灯的下一个灯就是左转弯的灯。S2W是由南往西,相反方向肯定是由北往东(N2E)啊,仔细看一下张老师画的那张交通灯图。假如你准备你是从十字路口的南边来的,准备去十字路口的西边,也就是S2W的行驶,属于左转弯。这时允许向左转弯的绿灯亮了,你就可以S2W行驶了,也就在左转弯灯为绿灯时, 同时由东往西和由西往东的交通灯也为绿灯。
回复 使用道具 举报
还有一点忘记说了,向右转弯时不受交通灯的约束,你也可以理解为向右转弯的灯永远为绿灯。所以要考虑向右转的灯
回复 使用道具 举报
哎,小地方出来的,十字路口太乱了,只要看到对面的灯绿了,随便走,往哪儿拐都可以,向左拐跟直行的一起走,害苦我了!
回复 使用道具 举报
学习学习!
回复 使用道具 举报
  这个 还没看到 啊   学习    赐教
回复 使用道具 举报
昨天晚上看了交通灯的视频,首先,这个系统给出的要求是忽略右转的灯,但是为了路线与灯一致,所以假设控制右转的灯存在且一直是绿灯;

至于直行的下一个灯为什么是左转的灯,这就是实际生活中的例子啊,正好说明了Java编程是为我们实际生活服务的;

你将S2E路线想象成一条直线,那它的相反方向不就是N2E么;

还有S2E的下一个是E2W,我是这样理解的,每一组路线即两条相反方向的路线实际上是可以由一条路线来表示,因为相反方向跟它是一致的。但是我想如果将S2E的下一条路线是W2E行不行呢?然后下一个是W2N。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马