红绿灯编程可以使用不同的编程语言来实现,以下是几种常见的编程语言及其示例代码:
Python 示例代码
使用 `turtle` 库绘制红绿灯外框
```python
import turtle
创建一个 turtle 对象
t = turtle.Turtle()
设置绘制速度
t.speed(5)
画长方形的边框
for _ in range(2):
t.forward(100) 长
t.right(90)
t.forward(300) 宽
t.right(90)
填充颜色为灰色
t.begin_fill()
t.fillcolor("gray")
t.end_fill()
```
模拟红绿灯交替变换
```python
import time
def red_light():
print("Red Light")
time.sleep(5) 红灯持续5秒
def yellow_light():
print("Yellow Light")
time.sleep(2) 黄灯持续2秒
def green_light():
print("Green Light")
time.sleep(5) 绿灯持续5秒
while True:
red_light()
yellow_light()
green_light()
```
C 语言示例代码
简单的红绿灯控制程序
```c
include include int main() { while(1) { // 设置红灯 printf("红灯亮\n"); sleep(5); // 延时5秒 // 设置绿灯 printf("绿灯亮\n"); sleep(5); // 延时5秒 // 设置黄灯 printf("黄灯亮\n"); sleep(2); // 延时2秒 } return 0; } ``` ```c include unsigned char tab[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F}; // 共阴数码管0-9 unsigned char Dis_Shiwei, Dis_Gewei; // 定义十位和个位 void delay(unsigned int cnt) { while (--cnt); } main() { TMOD |= 0x01; // 定时器设置,10ms in 12M crystal 定时器0,工作方式1,16位定时器TH0=0xd8; 65535-10000=55535=D8F0(十六进制) TL0=0xf0; IE= 0x82; // 中断控制,EA=1开总中断,ET0=1:定时器0中断允许TR0=1; P1 = 0xfc; // 红灯亮,根据红黄绿接灯的顺序 while(1) { P0 = Dis_Shiwei; // 显示十位 delay(300); // 短暂延时 P0 = Dis_Gewei; // 显示个位 delay(300); // 短暂延时 } } ``` 其他编程语言示例使用数码管显示红绿灯
使用 JavaScript 和 HTML5 Canvas