#include #include char line[] = "+---+"; char mline[] = "+ +"; char rbar[] = " |"; char lbar[] = "| "; char bbar[] = "| |"; char plus[] = " +"; char field[7][32]; int cpy(int i,int j, char * f){ field[j][i] = f[0]; field[j][i+1] = f[1]; field[j][i+2] = f[2]; field[j][i+3] = f[3]; field[j][i+4] = f[4]; return 0; } int proc(char * inp){ int x[] = {0,7,17,24}; int i = 0,j; for(j=0;j<4;j++){ i = x[j]; switch(inp[j]){ case '0': cpy(i,0,line); cpy(i,1,bbar); cpy(i,2,bbar); cpy(i,3,mline); cpy(i,4,bbar); cpy(i,5,bbar); cpy(i,6,line); break; case '1': cpy(i,0,plus); cpy(i,1,rbar); cpy(i,2,rbar); cpy(i,3,plus); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,plus); break; case '2': cpy(i,0,line); cpy(i,1,rbar); cpy(i,2,rbar); cpy(i,3,line); cpy(i,4,lbar); cpy(i,5,lbar); cpy(i,6,line); break; case '3': cpy(i,0,line); cpy(i,1,rbar); cpy(i,2,rbar); cpy(i,3,line); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,line); break; case '4': cpy(i,0,mline); cpy(i,1,bbar); cpy(i,2,bbar); cpy(i,3,line); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,plus); break; case '5': cpy(i,0,line); cpy(i,1,lbar); cpy(i,2,lbar); cpy(i,3,line); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,line); break; case '6': cpy(i,0,line); cpy(i,1,lbar); cpy(i,2,lbar); cpy(i,3,line); cpy(i,4,bbar); cpy(i,5,bbar); cpy(i,6,line); break; case '7': cpy(i,0,line); cpy(i,1,rbar); cpy(i,2,rbar); cpy(i,3,plus); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,plus); break; case '8': cpy(i,0,line); cpy(i,1,bbar); cpy(i,2,bbar); cpy(i,3,line); cpy(i,4,bbar); cpy(i,5,bbar); cpy(i,6,line); break; case '9': cpy(i,0,line); cpy(i,1,bbar); cpy(i,2,bbar); cpy(i,3,line); cpy(i,4,rbar); cpy(i,5,rbar); cpy(i,6,line); } } return 0; } int main(){ memset(field,' ',32*7); field[2][14] = field[4][14] = 'o'; char inp[16]; int a,b,c,d; int i; for(i=0;i<7;i++)field[i][29] = '\0'; L1: scanf("%s",inp); if( inp[0] == 'e'){ printf("end\n"); return 0; } inp[2] = inp[3]; inp[3] = inp[4]; proc(inp); for(i=0;i<7;i++){ printf("%s\n",field[i]); } printf("\n\n"); goto L1; }