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

        代寫CSE 231、代做Python設(shè)計程序

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



        CSE 231 Spring 2024
        Computer Project 05
        1. Assignment Overview (learning objectives)
        In this assignment, you will practice with files, lists and error-handling using exceptions. You are only allowed
        to use Lists and tuples. Any use of other advanced data structures (e.g., Dictionaries, Classes, etc.) will result in
        a zero on the project.
        2. Important Note about submission
        3. Assignment Deliverable
        The deliverable for this assignment is the following file:
        proj05.py – the source code for your Python program
        Be sure to use the specified file name and to submit it for grading via Codio before the project deadline.
        4. Assignment Background
        Yu-Gi-Oh! Trading Card Game which is based on the manga series of the
        same name and anime spin-off series Yu-Gi-Oh! Duel Monsters both
        created by Kazuki Takahashi and were released in 1996 and 2000. As the
        moment of writing this project, this franchise is currently celebrating its 25th
        anniversary. This franchise has developed thousands of iconic cards like:
        Dark Magician, Blue-Eyes White Dragon, Elemental Hero Neos, Stardust
        Dragon, and much more.
        As beloved as this series is with its strategic focus on monster cards, spell,
        and trap cards, it is not a hobby for everybody. Collecting some of these
        cards can be expensive, especially when they are popular in the competitive
        circuit. This project will read a dataset of these cards and show their prices
        on the market and how much does it cost to build a deck of these cards when
        bought in said market. The files used in this project were adapted from the
        following sources:
        1) Card data: https://www.kaggle.com/datasets/ioexception/yugioh-cards/code
        2) Decklists: https://ygoprodeck.com/
        This assignment is worth 50 points (5.0% of course grade), and must be completed before 11:59 PM
        EST on Tuesday, March 5th.
        After the due date, your score will be deducted by 10% for every 5 hours late or a fraction of it. No
        submissions will be accepted after 24 hours from the due date. The penalty will be applied on the
        full project score.
        The project will be automatically submitted by the due date (03/05). If you want to keep working on it
        after the deadline with penalty, you must manually click on “Mark as uncompleted”, acknowledge the
        penalty message and manually click on “Mark as completed” when done.
        CSE 231 Spring 2024
        These files contain the following information of each card:
        a) card_id (str): Unique card identifier
        b) card_name (str): Card name
        c) card_type (str): “Spell”, “Trap”, and various type of “Monster” cards
        d) card_description (str): Card summoning requirements and or card effects
        e) card_race (str): Card species. For example: “Spellcaster”, “Dragon”, or “Counter Trap”
        f) card_archetype (str): Name of group of cards that support specific characters: “Dark
        Magician”
        g) card_price (float): TCG player price for the card in the second market.
        5. Assignment Specifications
        1. You must implement the following functions:
        a) open_file (prompt_str) ---- file pointer
        This function repeatedly prompts the user for a filename (using the prompt string: prompt_str) until
        the file is opened successfully. An error message should be shown if the file cannot be opened (check
        the starter code or the strings.txt file for the appropriate strings). It returns a file pointer.
        Use try-except to determine if the file can be opened. When opening the file, you need to use
        encoding=" utf-8".
        fp = open(filename, "r", encoding = " utf-8")
        b) read_card_data(fp) ---- List of tuples
        This function is designed to parse a file containing the dataset of Yu-Gi-Oh trading cards. It takes a file
        pointer object (fp) as its parameter, which is returned by the open_file function. The function
        returns a list of tuples, where each tuple represents a card in the dataset.
        Each tuple consists of the following columns: id, name (limited to the first 45 characters), type,
        description, race, archetype, and the card's TCGPlayer price. To understand the dataset's format and
        identify the column indices we are interested in, it is recommended to open the CSV files in Excel or
        any text editor.
        The price is converted to a float within the tuple. After assembling the list of tuples, it is sorted in
        ascending order based on price first and then by name.
        c) search_cards(card_data, query, category_index) ---- List of tuples
        This function returns a list of cards that contain the provided query string in the given category index. It
        takes as its parameters: card_data (a list of cards like the list returned by read_card_data
        function), query (a string to search in a selected category), and category_index (the index of the
        category to search in the CATEGORIES list provided in the starter code). The returned list should be
        sorted in ascending order by price first and then by name.
        For example:
        query = "Dark Magician"
        category_index = 1 # Name
        result = [(xxxxx, "Dark Magician", ...), (xxxxx, "Dark Magician Girl", ...), ...]
        CSE 231 Spring 2024
        d) read_decklist(fp, card_data) ---- List of tuples
        This function creates a list of cards present in the current deck list (a YDK file). It takes as its
        parameters: a file pointer object (fp) to a YDK file and a card_data (a list of cards like the list
        returned by read_card_data function). The YDK file contains the ID of cards in a deck where
        each line in the file is a card ID. The function reads the IDs from the file and searches for all the cards
        by their “id” column.
        The returned list should be sorted in ascending order by price first and then by name.
        e) compute_stats(card_data) List_tuples,float,List_tuples,float,List_tuples,
        float
        This function takes as its parameter a card_data (a list of cards like the list returned by
        read_card_data function). It finds the minimum price, maximum price, and median price for all
        the cards in card_data. It also finds the list of cards that have the same value as the min, max, and
        median. Then, it returns the list of cards with the min price, the minimum price, the list of cards with the
        max price, the maximum price, the list of cards with the median price, and the median price.
        All lists should be sorted by name.
        f) display_data(card_data)
        This function takes as its parameter a card_data (a list of cards like the list returned by
        read_card_data function). It prints the contents of each card tuple in the card_data list. Then,
        it prints the total price. The table should be formatted properly. There are 5 columns in the table. First, a
        header line should be displayed:
        i. the string 'Name': in a field width of 50
        ii. the string 'Type': in a field width of 30
        iii. the string 'Race': in a field width of 20
        iv. the string 'Archetype': in a field width of 40
        v. the string 'TCGPlayer': in a field width of 12
        Then, the cards are displayed using the following formatting:
        i. Name: in a field width of 50
        ii. Type: in a field width of 30
        iii. Race: in a field width of 20
        iv. Archetype: in a field width of 40
        v. Price: in a field width of 12 with precision 2 and the comma for the thousand
        Finally, a line that shows the total price which is the sum of all the card prices should be displayed using
        the following formatting:
        i. the string 'Total': in a field width of 50
        ii. an empty string '': in a field width of 30
        iii. an empty string '': in a field width of 20
        iv. an empty string '': in a field width of 40
        v. Total: in a field width of 12 with precision 2 and the comma for the thousand
        g) display_stats(min_cards, min_price, max_cards, max_price,
        median_cards, median_price)
        This function prints the output from compute_stats() function. First, the minimum price is
        displayed with precision 2 and comma for the thousand. It is followed by all the card names that have a
        price the same as the minimum price. The function will do the same for the maximum and median price
        and data.
        CSE 231 Spring 2024
        h) main(): This function is the starting point of the program. The program prompts the user for an option
        until the user decides to stop the program:
        i. Prompt the card data filename (use the correct prompt from the starter code).
        ii. Read the card data file and get the list of categories and the list of card tuples.
        iii. Close the file.
        iv. Prompt an option
        v. Option 1 (Show all cards): This option shows details about each card in the dataset. It
        will find and display the number of cards in the data set. Then, use
        display_data()to show information of only the cheapest 50 cards in the dataset.
        Then, find and print all the cards that have the maximum price, minimum price, and the
        median price using the display_stats() function.
        vi. Option 2 (Search for cards): Prompt for a query string pertaining to a specific column
        in the card dataset. Re-prompt for category until the user enters a valid category (a
        category that is in the CATEGORY list). You should convert the input category to
        lowercase since the CATEGORY list items are all lowercase strings.
        Get all cards that satisfy the provided query. Find the maximum, minimum, and median
        values for all resulting cards in the search. If there are any cards that satisfies the query,
        display the number of cards in the results, then output the card information and the results
        like option 1. Otherwise, print that there are no cards in the category.
        vii. Option 3 (Search decklist): Prompt for a decklist filename and build a list of cards that
        have the same “card id” in the file. Show the card information; find the maximum,
        minimum, and median prices and display them.
        viii. Option 4: Stop the program.
        ix. If the user does not enter any of these options, the program needs to display an error
        message and prompt again until a valid option is selected.
        6. Assignment Notes and Hints
        1. The coding standard for CSE 231 is posted on the course website:
        http://www.cse.msu.edu/~cse231/General/coding.standard.html
        Items **9 of the Coding Standard will be enforced for this project.
        2. The program will produce reasonable and readable output, with appropriate labels for all values
        displayed.
        3. Be sure to prompt the user for the inputs in the correct order. And, your program cannot prompt the user
        for any supplementary inputs.
        4. We provide a proj05.py program for you to start with.
        5. You are not allowed to use advanced data structures such as dictionaries, classes, etc.
        6. If you “hard code” answers, you will receive a grade of zero for the whole project. An example of hard
        coding is to simply print the correct highest scores of a file rather than having the program find it in the
        file and then print it.
        7. Suggested Procedures
        • Solve the problem using pencil and paper first. You cannot write a program until you have figured out
        how to solve the problem. This first step can be done collaboratively with another student. However,
        once the discussion turns to Python specifics and the subsequent writing of Python statements, you must
        work on your own.
        CSE 231 Spring 2024
        • Cycle through the following steps to incrementally develop your program:
        o Edit your program to add new capabilities.
        o Run the program on Spyder and fix any errors.
        o Use the Codio system to submit the current version of your program.
        • Be sure to use the Codio system to submit the final version of your program.
        • Be sure to log out when you leave the room, if you’re working in a public lab.
        The last version of your solution is the program which will be graded by your TA. You should use the Codio
        system to back up your partial solutions, especially if you are working close to the project deadline. That is the
        easiest way to ensure that you won’t lose significant portions of your work if your machine fails or there are
        other last-minute problems.
        8. Grading Rubric
        Computer Project #05 Scoring Summary
        General Requirements
        ______ (4 pts) Coding Standard **8
         (descriptive comments, function header, etc...)
        Implementation:
        ____ (2 pts) Pass test1
        ____ (2 pts) Pass test2
        ____ (2 pts) Pass test3
        ____ (2 pts) Pass test4
        ____ (2 pts) Pass test5
        ____ (2 pts) Pass test6
        ____ (12 pts) Pass hidden tests (4 pts each)
        ____ (14 pts) All functions work as specified.
        (2 pt) open_file (Manual Grading)
        -1 point if No try/except
        -1 point if No while loop
         (2 pt) read_card_data
        (2 pt) read_decklist
        (2 pt) search_cards
        (2 pt) compute_stats
        (2 pt) display_data (Manual Grading)
        (2 pt) display_stats (Manual Grading)
        ____ (8 pts) Pass All hidden functions tests.
         (2 pt) read_card_data
        (2 pt) read_decklist
        (2 pt) search_cards
        (2 pt) compute_stats
        Note:
        • hard coding an answer earns zero points for the whole project.
        • -10 points for not putting all your user interaction in your main().
        • Use of any advanced data structures (such as lists, sets, dictionaries, classes,
        etc.) earns zero points for the whole project.
        CSE 231 Spring 2024
        9. Test Cases
        9.1 Function Unit Tests
        Check the test files in the Project05 starter package. When you run one test file as you normally run a python
        file in PyCharm. if an assertion error is generated, it means you failed the test. You can look at the test case .py
        files to see the details for the tests.
        9.2 Input/Output Tests
        We provide the .txt files with all the test files (inputX.txt and output.txt where X is the test number).
        If you fail a test, use diffchecker.com to check the difference between your output and the instructor output.
        請加QQ:99515681  郵箱:99515681@qq.com   WX:codehelp 









         

        掃一掃在手機(jī)打開當(dāng)前頁
      1. 上一篇:CS 2410代做、代寫C/C++語言程序
      2. 下一篇:代寫DTS203TC、C++,Java程序語言代做
      3. 無相關(guān)信息
        合肥生活資訊

        合肥圖文信息
        挖掘機(jī)濾芯提升發(fā)動機(jī)性能
        挖掘機(jī)濾芯提升發(fā)動機(jī)性能
        戴納斯帝壁掛爐全國售后服務(wù)電話24小時官網(wǎng)400(全國服務(wù)熱線)
        戴納斯帝壁掛爐全國售后服務(wù)電話24小時官網(wǎng)
        菲斯曼壁掛爐全國統(tǒng)一400售后維修服務(wù)電話24小時服務(wù)熱線
        菲斯曼壁掛爐全國統(tǒng)一400售后維修服務(wù)電話2
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國24小時客服熱線
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國24小時
        海信羅馬假日洗衣機(jī)亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
        海信羅馬假日洗衣機(jī)亮相AWE 復(fù)古美學(xué)與現(xiàn)代
        合肥機(jī)場巴士4號線
        合肥機(jī)場巴士4號線
        合肥機(jī)場巴士3號線
        合肥機(jī)場巴士3號線
        合肥機(jī)場巴士2號線
        合肥機(jī)場巴士2號線
      4. 幣安app官網(wǎng)下載 短信驗證碼

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

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

        主站蜘蛛池模板: 国产精品美女一区二区视频 | 久夜色精品国产一区二区三区| 精品国产一区二区三区av片 | 亚洲一区二区三区在线网站| 精品人妻一区二区三区四区在线 | 国产精品成人免费一区二区| 国产午夜精品一区二区三区| 一区二区手机视频| 国产精品无码一区二区三区不卡| 无码精品人妻一区二区三区漫画 | 国产激情з∠视频一区二区| 一区二区三区午夜| 国产成人高清亚洲一区久久| 亚洲综合一区国产精品| 国产日本亚洲一区二区三区| 国产精品一区二区不卡| 3d动漫精品啪啪一区二区免费| 国产激情无码一区二区| 中文字幕一区二区三区有限公司 | 日韩一区二区a片免费观看| 亚洲一区二区三区无码国产| 亚洲一区二区三区四区视频| 日本免费一区二区三区四区五六区 | 无码国产精品一区二区免费| 亚洲一区中文字幕久久| 无码国产精品一区二区免费模式 | 中文乱码字幕高清一区二区| 成人中文字幕一区二区三区 | 中文字幕亚洲乱码熟女一区二区| 久久精品国产一区二区三区| 亚洲AV本道一区二区三区四区 | 在线视频亚洲一区| 男人免费视频一区二区在线观看 | 中文字幕日韩一区二区三区不卡| 麻豆一区二区在我观看| 一色一伦一区二区三区| 国产精品熟女视频一区二区| 国产成人高清精品一区二区三区| 国产亚洲欧洲Aⅴ综合一区| 亚洲伦理一区二区| 韩国一区二区三区视频|