NEUOJ Problem48

来源:互联网 发布:现货软件哪个好 编辑:程序博客网 时间:2024/05/17 04:57

NEUOJ Problem48
Problem Description

Digital clock use 4 digits to express time, each digit is described by 3*3 characters (including”|”,”_”and” “).now given the current time, please tell us how can it be expressed by the digital clock.

Input

There are several test cases.

Each case contains 4 integers in a line, separated by space.

Proceed to the end of file.

Output

For each test case, output the time expressed by the digital clock such as Sample Output.

Sample Input
1 2 5 6
2 3 4 2
Sample Output
_ _ _
| || |_
||_ |||
_ _ _
| ||| |
|_ | ||

我的代码:

#include<iostream>#include<cstdio>using namespace std;int main(){    int a[4];    int i,j;    char ch1[3][3]={{' ',' ',' '},{' ',' ','|'},{' ',' ','|'}};    char ch2[3][3]={{' ','_',' '},{' ','_','|'},{'|','_',' '}};    char ch3[3][3]={{' ','_',' '},{' ','_','|'},{' ','_','|'}};    char ch4[3][3]={{' ',' ',' '},{'|','_','|'},{' ',' ','|'}};    char ch5[3][3]={{' ','_',' '},{'|','_',' '},{' ','_','|'}};    char ch6[3][3]={{' ','_',' '},{'|','_',' '},{'|','_','|'}};    char ch7[3][3]={{' ','_',' '},{' ',' ','|'},{' ',' ','|'}};    char ch8[3][3]={{' ','_',' '},{'|','_','|'},{'|','_','|'}};    char ch9[3][3]={{' ','_',' '},{'|','_','|'},{' ','_','|'}};    char ch0[3][3]={{' ','_',' '},{'|',' ','|'},{'|','_','|'}};    while(~scanf("%d %d %d %d",&a[0],&a[1],&a[2],&a[3]))    {        for(i=0;i<3;i++)        {            for(j=0;j<4;j++)            {                switch(a[j])                {                    case 0:printf("%c%c%c",ch0[i][0],ch0[i][1],ch0[i][2]);break;                    case 1:printf("%c%c%c",ch1[i][0],ch1[i][1],ch1[i][2]);break;                    case 2:printf("%c%c%c",ch2[i][0],ch2[i][1],ch2[i][2]);break;                    case 3:printf("%c%c%c",ch3[i][0],ch3[i][1],ch3[i][2]);break;                    case 4:printf("%c%c%c",ch4[i][0],ch4[i][1],ch4[i][2]);break;                    case 5:printf("%c%c%c",ch5[i][0],ch5[i][1],ch5[i][2]);break;                    case 6:printf("%c%c%c",ch6[i][0],ch6[i][1],ch6[i][2]);break;                    case 7:printf("%c%c%c",ch7[i][0],ch7[i][1],ch7[i][2]);break;                    case 8:printf("%c%c%c",ch8[i][0],ch8[i][1],ch8[i][2]);break;                    case 9:printf("%c%c%c",ch9[i][0],ch9[i][1],ch9[i][2]);break;                }            }            cout<<endl;        }    }    return 0;}

网上某大神的代码

#include <iostream>using namespace std;int main(){    int a[4];    while(cin>>a[0]>>a[1]>>a[2]>>a[3])    {        for(int j=1; j<=3; j++)        {            if(j==1)            {                for(int i=0; i<4; i++)                {                    if(a[i]==1||a[i]==4)                        cout<<"   ";                    else                        cout<<" _ ";                }            }            if(j==2)            {                for(int i=0; i<4; i++)                {                    if(a[i]==1||a[i]==7)                        cout<<"  |";                    else if(a[i]==0)                        cout<<"| |";                    else if(a[i]==2||a[i]==3)                        cout<<" _|";                    else if(a[i]==4||a[i]==8||a[i]==9)                        cout<<"|_|";                    else                        cout<<"|_ ";                }            }            if(j==3)            {                for(int i=0; i<4; i++)                {                    if(a[i]==0||a[i]==6||a[i]==8)                        cout<<"|_|";                    else if(a[i]==1||a[i]==4||a[i]==7)                        cout<<"  |";                    else if(a[i]==2)                        cout<<"|_ ";                    else                        cout<<" _|";                }            }            cout<<endl;        }    }    return 0;}
0 0