合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務合肥法律

        IERG2080代做、代寫C/C++程序語言

        時間:2024-05-19  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯



        IERG2080 Spring 2024
        Project Due: 17 May 2024
        Rules:
        1. This project takes 10% of the course total.
        2. Your code will be compiled and tested in theVM. 0 score if the code cannot be
        compiled in the VM.
        3. No late submission is allowed.
        4. This is a group project. Only one member submitting the work to Blackboard is
        required.
        In this project, you are going to write a simple 2D bitmap editor. You will use a library called
        ncurses that provides API for direct keyboard inputs, absolute screen coordinates for
        full-screen outputs, etc.
        To compile the demo that illustrates how to use ncurses, you need to install the library first.
        In your VM, run
        sudo apt install libncurses-dev
        After installation, you can now compile the example code by
        gcc curses_demo.c -o curses_demo -lcurses
        The flag -lcurses asks the linker to link with the library named curses. Try to understand
        the demo code and see how to initialize an ncurses program, how to move a cursor, how to
        read the pressed key, etc.
        Next, you need to understand the portable bitmap format (PBM). The following is an
        example from Wikipedia https://en.wikipedia.org/wiki/Netpbm#PBM_example
        P1
        # This is an example bitmap of the letter "J"
        6 10
        0 0 0 0 1 0
        0 0 0 0 1 0
        0 0 0 0 1 0
        0 0 0 0 1 0
        0 0 0 0 1 0
        0 0 0 0 1 0
        1 0 0 0 1 0
        0 1 1 1 0 0
        0 0 0 0 0 0
        0 0 0 0 0 0The first line P1 indicates that the file is a portable bitmap, where each pixel is either 0 or 1
        (white or black). The line starts with # is a comment that will be ignored by image readers.
        The line 6 10 indicates the size of the image: 6x10 pixels. After that, the binary digits are the
        pixel values of the image. Note that the spaces and newlines in the description of the image
        body can be omitted. Say, the following example gives the same image as the above one.
        P1
        # This is an example bitmap of the letter "J"
        6 10
        000010000010000010000010000010000010100010011100000000000000
        To open a pbm file, you need an image editor. In Ubuntu, you can use gimp (GNU Image
        Manipulation Program). Install gimp by
        sudo apt install gimp
        Suppose your program is named proj. The following is the usage of your program.
        ./proj [in=in_file] [out=out_file]
        ./proj [out=out_file] [in=in_file]
        Both arguments are optional. Yet, the phase in= or out= must be provided if the
        corresponding argument is used. in_file is the input file name, and out_file is the output
        file name.
        Your program provides an interface for a user to draw a 2D bitmap image. Here are the
        descriptions. Each item takes 1 point (full score 10 points).
        1. If in_file is supplied, load the file. If the file is not a 80x24 PBM, print an error
        message and terminate the program.
        2. Initialize curses. Change the terminal size to 80x24 (width 80, height 24). Turns on
        REVERSE video mode attribute (black characters on a white background).
        3. If in_file is not supplied, fill the whole screen with spaces to show a full reverse
        background. Otherwise, show the image on the screen. Use # for 1 and a space for
        0. For both cases, move the cursor to the top-left corner after the initialization is
        done.
        4. Let the user move the cursor around using the arrow keys (cannot move beyond the
        boundary of the screen).
        5. When the user presses the spacebar, draw or erase a # at the location of the cursor.
        6. When the user presses ESC, ends the curses environment and recovers the original
        terminal settings.
        7. If out_file is not supplied, print the image drawn by the user as a PBM format on the
        screen using printf. As the terminal size was 80x24, the image size is 80x24. (The
        user can copy the printed content to a .pbm file on their own.)
        8. If out_file is supplied, save the PBM data to the file. Print an error message if the file
        cannot be saved.
        9. Create a Makefile so that you can compile your code by make.
        10. Make sure that both orders of arguments work as expected.
        Write your code in a single .c file. Compress the .c file with the Makefile into a .zip file, and
        then submit it to Blackboard.

        請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp

















         

        掃一掃在手機打開當前頁
      1. 上一篇:代寫EBU4201、代做Java設計編程
      2. 下一篇:STSCI 4060代做、代寫Python設計程序
      3. 無相關信息
        合肥生活資訊

        合肥圖文信息
        急尋熱仿真分析?代做熱仿真服務+熱設計優(yōu)化
        急尋熱仿真分析?代做熱仿真服務+熱設計優(yōu)化
        出評 開團工具
        出評 開團工具
        挖掘機濾芯提升發(fā)動機性能
        挖掘機濾芯提升發(fā)動機性能
        海信羅馬假日洗衣機亮相AWE  復古美學與現(xiàn)代科技完美結合
        海信羅馬假日洗衣機亮相AWE 復古美學與現(xiàn)代
        合肥機場巴士4號線
        合肥機場巴士4號線
        合肥機場巴士3號線
        合肥機場巴士3號線
        合肥機場巴士2號線
        合肥機場巴士2號線
        合肥機場巴士1號線
        合肥機場巴士1號線
      4. 短信驗證碼 酒店vi設計 deepseek 幣安下載 AI生圖 AI寫作 aippt AI生成PPT

        關于我們 | 打賞支持 | 廣告服務 | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

        Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權所有
        ICP備06013414號-3 公安備 42010502001045

        主站蜘蛛池模板: 国产视频一区二区在线播放| 人妻精品无码一区二区三区| 中文字幕日韩一区二区三区不卡| 国产SUV精品一区二区四| 亚洲一区二区三区影院| 亚洲欧洲一区二区三区| 国产精品亚洲一区二区在线观看| 精品视频一区二区三三区四区| 国产色情一区二区三区在线播放| 国产av一区二区精品久久凹凸| 成人免费视频一区| 久久中文字幕无码一区二区| 亚洲福利秒拍一区二区| 69福利视频一区二区| 国产精品特级毛片一区二区三区| 国产成人一区二区三区在线| 国产成人一区在线不卡| 精品国产AⅤ一区二区三区4区 | 国产suv精品一区二区33| 果冻传媒一区二区天美传媒| 男人免费视频一区二区在线观看 | 好吊妞视频一区二区| 欧美日韩国产免费一区二区三区 | 精品不卡一区中文字幕| 精品免费AV一区二区三区| 国产一区视频在线免费观看| 精彩视频一区二区| 亚洲AV无码一区二区三区在线观看 | 日本一区二区三区在线看| 日韩美一区二区三区| 人妻无码一区二区三区| 久久精品无码一区二区日韩AV| 国产精品一区二区av不卡| 亚洲日韩精品一区二区三区| 久久久久久免费一区二区三区| 色狠狠AV一区二区三区| 亚洲色一区二区三区四区| 波多野结衣中文字幕一区二区三区| 国产av一区二区精品久久凹凸| 中文无码精品一区二区三区| 亚洲电影一区二区|