• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            付翔的專欄
            在鄙視中成長 記錄成長的點滴
            posts - 106,  comments - 32,  trackbacks - 0

            LC-Display



            A friend of yours has just bought a new computer. Before this, the most powerful machine he ever used was a pocket calculator. He is a little disappointed because he liked the LCD display of his calculator more than the screen on his new computer! To make him happy, write a program that prints numbers in LCD display style.

            Input

            The input file contains several lines, one for each number to be displayed. Each line contains integers s and n, where n is the number to be displayed ( 0$ \le$n$ \le$99, 999, 999) and s is the size in which it shall be displayed ( 1$ \le$s$ \le$10). The input will be terminated by a line containing two zeros, which should not be processed.

            Output

            Print the numbers specified in the input file in an LCD display-style using s ``-'' signs for the horizontal segments and s ``|'' signs for the vertical ones. Each digit occupies exactly s + 2 columns and 2s + 3 rows. Be sure to fill all the white space occupied by the digits with blanks, including the last digit. There must be exactly one column of blanks between two digits.

            Output a blank line after each number. You will find an example of each digit in the sample output below.

            Sample Input

            2 12345
            3 67890
            0 0

            Sample Output

                  --   --        -- 
            | | | | | |
            | | | | | |
            -- -- -- --
            | | | | |
            | | | | |
            -- -- --

            --- --- --- --- ---
            | | | | | | | |
            | | | | | | | |
            | | | | | | | |
            --- --- ---
            | | | | | | | |
            | | | | | | | |
            | | | | | | | |
            --- --- --- ---




            #include <iostream>
            using namespace std;

             
            int display[10][7];
            void init ()
            {
                display[
            0][0]=display[0][1]=display[0][2]=display[0][4]=display[0][5]=display[0][6]=1;
                display[
            1][2]=display[1][5= 1;
                display[
            2][0]=display[2][2]=display[2][3]=display[2][4]=display[2][6]=1;
                display[
            3][0]=display[3][2]=display[3][3]=display[3][5]=display[3][6]=1;
                display[
            4][1]=display[4][2]=display[4][3]=display[4][5]=1;
                display[
            5][0]=display[5][1]=display[5][3]=display[5][5]=display[5][6]=1;
                display[
            6][0]=display[6][1]=display[6][3]=display[6][4]=display[6][5]=display[6][6]=1;
                display[
            7][0]=display[7][2]=display[7][5]=1;
                display[
            8][0]=display[8][1]=display[8][2]=display[8][3]=display[8][4]=display[8][5]=display[8][6]=1;
                display[
            9][0]=display[9][1]=display[9][2]=display[9][3]=display[9][5]=display[9][6]=1;
                
            }
            int fun(int row)
            {
                
            if(row == 1)
                    
            return 0;
                
            if(row == 2)
                    
            return 1;
                
            if(row ==3)
                    
            return 3;
                
            if(row == 4)
                    
            return 4;
                
            if(row == 5)
                    
            return 6;
                
            }
            void work(int s,int row,int n)
            {
                
            char temp[10],c;
                
            int len,i,j,ans,k;
                itoa(n,temp,
            10);
                len 
            = strlen(temp);
                
            if(row %2 ==1)
                {
                    ans 
            = fun(row);
                    
            //printf(" ");
                    for(i = 0; i < len ; i ++)
                    {
                        printf(
            " ");
                        
            //if(temp[i]-'0' != 1)
                        
            //{
                            for(j = 0 ; j < s; j ++)
                            {
                                
            if(display[temp[i]-'0'][ans]==1)
                                    printf(
            "-");
                                
            else printf(" ");
                            }    
                        
            //}
                        printf(" %c",(i == len-1)?'\n':' ');
                        
                        
                    }
                    
                }
                
                
            else if(row %2== 0)
                {
                    ans 
            = fun(row);
                    
            for(i = 0; i < s ; i ++)
                    {
                        
            for(j = 0 ; j < len; j ++)
                        {
                            
            if(display[temp[j]-'0'][ans]==1)
                                printf(
            "|");
                            
            else printf(" ");
                            
                            
            //if(temp[j]-'0' != 1)
                            
            //{
                                for(k = 0; k < s ; k ++)
                                    printf(
            " ");
                                
            //    for(j = 0 ; j < len; j ++)
                                
            //    {
                                if(display[temp[j]-'0'][ans+1]==1)
                                    printf(
            "|");
                                
            else printf(" ");
                            
            //}
                            if(j != len-1) printf(" ");
                        }
                        
            //    }
                        printf("\n");                
                        
                    }
                    
                }
            }
            void solve(int s,int n)
            {
                
            for(int i = 1; i <= 5; i ++)work(s,i,n);
            }

            int main()
            {
                
            //freopen("in.txt","r",stdin);
                int s,n;
                init();
                
            while(scanf("%d%d",&s,&n),s||n)
                {
                    solve(s,n);
                }
                
            return 0;
            }

            posted on 2010-07-22 18:13 付翔 閱讀(186) 評論(0)  編輯 收藏 引用 所屬分類: ACM 數據結構

            <2012年7月>
            24252627282930
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            CSDN - 我的blog地址

            博客

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            欧美久久天天综合香蕉伊| 久久精品一区二区三区AV| 国产成人精品久久| 久久综合一区二区无码| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 精品久久久久久无码中文野结衣| 99久久久精品| 亚洲国产精品一区二区久久| 国产欧美久久久精品| 国产麻豆精品久久一二三| 久久亚洲精品国产精品| 久久精品午夜一区二区福利 | 亚洲综合伊人久久大杳蕉| 国产精品亚洲综合久久| 国内高清久久久久久| 色婷婷综合久久久中文字幕| 国产精品禁18久久久夂久| 欧美伊香蕉久久综合类网站| 久久AⅤ人妻少妇嫩草影院| 亚洲精品97久久中文字幕无码 | 久久夜色精品国产亚洲| 亚洲AV无码久久精品蜜桃| AAA级久久久精品无码片| 99久久精品九九亚洲精品| 亚洲v国产v天堂a无码久久| 中文字幕乱码人妻无码久久| 69SEX久久精品国产麻豆| 久久久久亚洲av毛片大| 伊人久久精品无码二区麻豆| 久久发布国产伦子伦精品 | 久久亚洲AV无码精品色午夜| 午夜精品久久久久久久| 热99re久久国超精品首页| 国内精品久久久久影院亚洲| 99久久久精品| 亚洲中文字幕无码久久综合网| 久久免费线看线看| 久久人人妻人人爽人人爽| 人妻中文久久久久| 亚洲欧美精品伊人久久| 综合久久国产九一剧情麻豆|