欢迎光临
我们一直在努力

【题解】WebGoC 112333.交通灯信号灯

题目描述

交通信号灯由红、黄、绿三种颜色组成,每种颜色都有其特定的含义和规则。红灯表示禁止通行、绿灯表示准许通行、黄灯表示警示。横向信号灯的排列顺序:红灯左、黄灯中、绿灯右。有倒计时功能的信号灯,在黄灯位置显示倒计时。如下图所示:

4-1.png


小C观察发现他学校门口的交通信号灯显示状态有如下规律:

第一盏 红灯长亮60秒,灭65秒。
第二盏 灭50秒,红灯倒计时10秒,灭50秒,绿灯倒计时10秒,黄灯亮5秒。
第三盏 灭60秒,绿灯长亮60秒,灭5秒。

4-2.png

如果从上图的最左边的初始状态开始计时,请你用webgoc 软件画出t秒时交通信号灯的显示状态。


绘图说明:交通信号灯是一个200*60的黑色(0号色)实心长方形底座,横向分布了三个半径为25的实心圆,圆的间距为10。灯亮时颜色分别为1号色、13号色和3号色,灯灭时颜色为8号色。倒计时字号可以用命pen.textSize(30)设置。


输入格式

输入有一个数据:t 秒(1<=t<=3600),表示时间。


输出格式

请画出t秒时交通信号灯的显示状态。


输入/输出例子1

输入:

366

输出:

4-3.png


输入/输出例子2

输入:

51

输出:

4-4.png


输入/输出例子3

输入:

122

输出:

4-5.png


参考答案

int main(){
int t,x;
cin>>t;
x=t%125;
p.speed(10).up();
p.rr(200,60,0).oo(25,8);
p.moveTo(-60,0).oo(25,8);
p.moveTo(60,0).oo(25,8);
if(x==0)
p.moveTo(0,0).oo(25,13);
else if(x<=50)
p.moveTo(-60,0).oo(25,1);
else if(x<=60)
{
p.moveTo(-60,0).oo(25,1);
p.moveTo(0,0).text(61-x,1,30);
}
else if(x<=110)
p.moveTo(60,0).oo(25,3);
else if(x<=120)
{
p.moveTo(60,0).oo(25,3);
p.moveTo(0,0).text(121-x,3);
}
else
p.moveTo(0,0).oo(25,13);
p.hide();
return 0;
}


题目链接:

https://v1.51goc.com/level/program/122/112333

(进去后要登录)

赞(0)
未经允许不得转载:171主机测评 » 【题解】WebGoC 112333.交通灯信号灯
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址