学无先后,达者为师

网站首页 编程语言 正文

C++实现路口交通灯模拟系统_C 语言

作者:KC-馮世傑   更新时间: 2022-05-24 编程语言

交通灯信号控制是交通工具现代化的产物,在平面交叉口,为了把可能发生冲突的车流从时空上分离,必须通过交通信号对交通流进行有效的引导和调度。

设计要求:

(1)  设计一个十字路口的交通灯控制电路,要求南北方向和东西方向两个交叉路口的车辆交替运行,每个方向绿灯亮30秒,两个方向能根据车流量的大小自动调节通行时间,车流量大,通行时间增加30秒,车流量小,通行时间仍然是30秒。

(2)  在路灯转为红灯时,要求黄灯先亮3秒钟,才能变换运行车道。

系统算法设计图:

#include  
#include  
using namespace std;  
  
void way1(int a,int y);     //交通灯的函数
void way2(int b);
 
int green1, green2;    //定义交通灯的红,黄,绿灯的变量和赋初值
int yellow1, yellow2;
int red1, red2;
int green[2] = {31,61};
int yellow = 4;
int red[3] = {34,64};
 
int main()
{
    int car1, car2, car3, car4;     //车辆数变量
    int i = 0, j;
    char d;
    cout<>car1;
        cout<<"请设置西车道车辆数:";
        cin>>car2;
        cout<<"请设置北车道车辆数:";
        cin>>car3;
        cout<<"请设置南车道车辆数:";
        cin>>car4;
        cout<10)     //根据车辆数来选择交通灯计时函数
        {
            j = i+1;
            way1(j, i);
        }
        else if(((car1+car2)-(car3+car4)>=0)&&((car1+car2)-(car3+car4)<=10))
        {
            way2(i);
        }
        else
        {
            j = i+1;
            way1(i, j);
        }
        cout<<"若想重新设置车辆数请按Y,若退出请按N。";
        cin>>d;
        if(d == 'Y'||d == 'y')
        {
            cout<0;c--)
        {  
            cout<0)
            {
                if(green1==green[a])
                {
                    green1--;
                }
                else
                {
                    cout<<"   >>> 绿灯 <<< "<0)  
            {  
                if(yellow1==4)  
                    yellow1--;    
                else  
                {  
                    cout<<"   >>> 黄灯 <<< "<0)  
            {  
                if(red1==red[y])  
                    red1--;  
                else   
                { 
                    cout<<"   >>> 红灯 <<< "<0)
            {
                if(red2==red[a])
                {
                    red2--;
                }
                else
                {
                    cout<<"   >>> 红灯 <<< "<0)  
            {  
                if(green2==green[y])  
                    green2--;    
                else  
                {  
                    cout<<"   >>> 绿灯 <<< "<0)  
            {  
                if(yellow2==4)  
                    yellow2--;  
                else   
                {  
                    cout<<"   >>> 黄灯 <<< "<>d;
        if(d == 'C'||d == 'c')
        {
            cout<0;c--)
        {  
            cout<0)
            {
                if(green1==green[b])
                {
                    green1--;
                }
                else
                {
                    cout<<"   >>> 绿灯 <<< "<0)  
            {     
                if(yellow1==4)  
                    yellow1--;    
                else  
                {  
                    cout<<"   >>> 黄灯 <<< "<0)  
            {  
                if(red1==red[b])  
                    red1--;  
                else   
                { 
                    cout<<"   >>> 红灯 <<< "<0)
            {
                if(red2==red[b])
                {
                    red2--;
                }
                else
                {
                    cout<<"   >>> 红灯 <<< "<0)  
            {  
                if(green2==green[b])  
                    green2--;    
                else  
                {  
                    cout<<"   >>> 绿灯 <<< "<0)  
            {  
                if(yellow2==4)  
                    yellow2--;  
                else   
                {  
                    cout<<"   >>> 黄灯 <<< "<>d;
        if(d == 'C'||d == 'c')
        {
            cout<

原文链接:https://blog.csdn.net/u013930494/article/details/33070443

栏目分类
最近更新