Program dd; var s:string[5]; poms:char; i:byte; function VRAT(par1:char; par2:byte):string[5]; begin case par2 of 1: begin if (par1='1') then VRAT:=' +' else if (par1='4') then VRAT:='+ +' else VRAT:='+---+'; end; 2: begin if (par1 in ['1','2','3','7']) then VRAT:=' |' else if (par1 in ['5','6']) then VRAT:='| ' else VRAT:='| |'; end; 3: begin if (par1 in ['1','2','3','7']) then VRAT:=' |' else if (par1 in ['5','6']) then VRAT:='| ' else VRAT:='| |'; end; 4: begin if (par1 in ['1','7']) then VRAT:=' +' else if (par1='0') then VRAT:='+ +' else VRAT:='+---+'; end; 5: begin if (par1='2') then VRAT:='| ' else if (par1 in ['0','8','6']) then VRAT:='| |' else VRAT:=' |'; end; 6: begin if (par1='2') then VRAT:='| ' else if (par1 in ['0','8','6']) then VRAT:='| |' else VRAT:=' |'; end; 7: begin if (par1 in ['1','4','7']) then VRAT:=' +' else VRAT:='+---+'; end; end; end; begin readln(s); while s<>'end' do begin poms:=' '; for i:=1 to 7 do begin if ((i=3) or (i=5)) then poms:='o'; writeln(VRAT(s[1],i),' ',VRAT(s[2],i),' ',poms,' ',VRAT(s[4],i),' ',VRAT(s[5],i)); poms:=' '; end; writeln; writeln; readln(s); end; writeln('end'); end.