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

        代寫CMPT 125、c++設計編程代做

        時間:2023-11-14  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯


        Assignment 3 CMPT 125 Intro. To Computing Science & Programming II Fall 2023

        Assignment 3 (10% of Course Total)

        Due date: 11:59pm, Nov 10, 2023

        At least part of the assignment will be graded automatically. Make sure that your code compiles without 

        warnings/errors and produces the required output. Also use the file names and structures indicated as 

        requested. Deviation from that might result in 0 mark.

        Your code MUST compile and run reasonably efficiently in the CSIL machines with the Makefile provided. 

        It is possible that even with warnings your code would compile. But this still indicates there is something 

        wrong with you code and you have to fix them, or marks will be deducted.

        Your code MUST be readable and have reasonable documentation (comments) explaining what it does. 

        Use your own judgement, for example, no need to explain i += 2 is increasing i by 2, but explain how 

        variables are used to achieve something, what a certain loop is doing, and the purpose of each #include.

        Description

        There is only 1 question in this assignment. However, there are several files you need to submit. Write 

        your answer in the corresponding file as instructed along with your student information. You can include 

        any libraries that are covered in class (i.e., stdio, stdlib, string, math, stdbool). You can also write your own 

        helper functions. Only one of these files should contain the main function.

        Question 1 [16 marks]

        In this question you are going to extend the program you made in Assignment 2 by providing more 

        functionalities. You are again going to write your own main function so the program runs.

        Create a program that reads all the talk information from a file and provide an interface for the user to 

        query talk entries. Your program must support the following functionalities as options:

         Option 1: to load a talksfile  C ask the user to input the name of the file containing talk information

        and load the entries from that file (report # of entries). Note that the file can be non-existent (if 

        so the program should print the error and keep running), but if it exists you can assume the format 

        inside that file is consistent (duration, talk title, overview, ---), with each line having at most 300 

        characters. It is possible for the user to load a different file by choosing this option again, which 

        will replace the previously loaded entries. You can assume the filename as at most 50 characters.

         Option 2: to list talks sorted by duration  C list the talk entries from shortest to longest. If with the 

        same duration there are more than one talk entry, any order within that duration is acceptable.

         Option 3:to list talks sorted by title  C list the talk entries sorted by title (as determined by strcmp). 

        If with the same title there are more than one talk entry, any order within that title is acceptable.

         Option 4: to lookup a talk  C ask the user for a talk title for at most 50 characters (space included),

        then report all entries containing the input as a substring. There can be more than one entry from 

        the file. The lookup is case-sensitive (i.e.,   computer   and   Computer   are not the same).

        o If one or more entries are found, print all the information. Any order is acceptable.

        o If no entry is found, print   No such talk on record.  

        You can assume the user will always enter at most 50 characters.

        Option 5: to terminate the program  C thank the user and end the program.

        Assignment 3 CMPT 125 Intro. To Computing Science & Programming II Fall 2023

        Page 2 of 5 ? , 2023

        Your program must meet these requirements:

         Include the provided header file (.h file) and use the functions defined in the corresponding 

        implementation file (.c file) in your driver file (where main is), do not redefine those functions.

         Use a dynamic array of Talk struct pointers to store the talk information. This is the recommended 

        approach (instead of a static array with a fixed size) as we might change the number of entries in 

        the provided file, and dynamic arrays can accommodate that variation.

         There must be no memory leaks (e.g., your program requests some memory but does not release 

        them all before it terminates). In CSIL you can use the Valgrind tool as described to check for that.

         Start with a fancy banner. There is no specific requirement besides it must include your name, 9-

        digit SFU ID, and your SFU email address. Let your creativity shine, just nothing offensive.

         If a functionality (e.g., list, lookup) is requested by the user but no file has been loaded, the 

        program should print an error message telling the user that no talks file have been loaded and 

        prompt the user to do so.

         The sorting for Options 2&3 must be done using the built-in qsort. Meaning you have to write 

        your own compare functions for qsort to use (see a3_talklib.h and a3_talklib.c).

        And here are some hints for you to write your code:

         The interface is essentially a do-while loop where in each iteration it asks for an option and 

        determines what to do, with a repeating conditional of the terminating option has not been 

        inputted. It is a common approach for menu-based interfaces.

         Since each item in the dynamic array for the talk entries are pointers, be careful with how you 

        are casting the pointer variables in the compare functions (they are pointers to the items)  C

        suppose the dynamic array has the type Talk**, then the variables should be cast to Talk**.

         The scanf() function works slightly differently between different formats. One difference is how 

        it handles leading and trailing newlines (look up   dangling newline character   if you are curious). 

        One option to get around this is put a space in front of the format string (e.g.,    %d  ,    %s  ). You 

        are encouraged to explore different ways to get around this issue.

        *The entries are randomly generated using ChatGPT with a specific format and then lightly modified. 

        Hence, the content might not make sense and have very similar wording patterns  C no need to worry.

        Include the function definitions corresponding to a3_talklib.h (and your helper functions, if any) in a 

        source file named as a3_talklib.c. Remember the .h file declares the functions and the .c file define them.

        Include your main function (and your helper functions, if any) in another source file named as 

        a3_talkLookupSystem.c. We call this the driver file because this is where the program starts.

        To determine where to place a helper function, think about its purpose. If it provides functionality with 

        the Talk structs (e.g., create/clear Talks, compare Talks), it is a library function; if it provides functionality 

        of the program (e.g., print a fancy banner), it is a program function. Incorrectly placing these functions 

        will lead to mark deductions in the Coding Style category.

        Assignment 3 CMPT 125 Intro. To Computing Science & Programming II Fall 2023

        Page 3 of 5 ? , 2023

        Here are some sample input and output (you can assume user input is always valid, but could be incorrect):

        Figure 1. Opening a non-existent file (incorrect input) then an existing file.

        Figure 2. Listing talks sorted by title.

        Assignment 3 CMPT 125 Intro. To Computing Science & Programming II Fall 2023

        Page 4 of 5 ? , 2023

        Figure 3. Looking up for   Quantum Computing    C yes there are actually duplicates in the file!.

        Coding Style [4 marks]

        Your program should be properly indented, have clear and meaningful variable names (e.g., no single?letter variable names except loop iterators) and enough white space and comments to make it easy to 

        read. Named constants should be used where appropriate. Each line of code should not exceed 80 

        characters. White space should be used in a consistent manner.

        Keep your code concise and efficient. If your code is unnecessarily long or inefficient (e.g., hard-code for 

        all possible cases, extraneous function calls), we might deduct marks. To help you to get into the habit of 

        good coding style, we will read your code and marks will be deducted if your code is not styled properly.

        Using the Makefile and Other Supplied Files

        The Makefile provided in this assignment is used by a command in the CSIL machines called   make   to 

        quickly compile your code. It is especially useful if you have multiple source files. To use it, type the 

        following command in the prompt (make sure you are in the directory with all the files of Assignment 3):

        $ make test1

        The example above illustrates how Question 1 is compiled into an executable called   test1   when using 

        the Makefile. Replace the   test1   with   test2  ,   test3  ,   etc. for other questions. You can then run the 

        executable by typing   ./test1   to test your code for Question 1. If you make changes to your code, use the 

        make command again. You can also use   make all   if you want to compile all your code at once.

        The header file a3_talklib.h is there to make the compilation work. Take a look at it for information about 

        how each function should work. You might have to modify it and you will have to submit it this time.

        Submission

        Submit only the 3 source files (a3_talklib.h, a3_talklib.c, a3_talkLookupSystem.c) to CourSys. Refer to the 

        corresponding Canvas assignment entry for details. 

        Assignment late penalty: 10% per calendar day (each 0 to 24 hour period past due), max 2 days late.

        Academic Honesty

        It is expected that within this course, the highest standards of academic integrity will be maintained, in 

        keeping with SFU  s Policy S10.01,   Code of Academic Integrity and Good Conduct.   In this class, 

        collaboration is encouraged for in-class exercises and the team components of the assignments, as well 

        Assignment 3 CMPT 125 Intro. To Computing Science & Programming II Fall 2023

        Page 5 of 5 ? , 2023

        as task preparation for group discussions. However, individual work should be completed by the person 

        who submits it. Any work that is independent work of the submitter should be clearly cited to make its 

        source clear. All referenced work in reports and presentations must be appropriately cited, to include 

        websites, as well as figures and graphs in presentations. If there are any questions whatsoever, feel free 

        to contact the course instructor about any possible grey areas.

        Some examples of unacceptable behavior:

         Handing in assignments/exercises that are not 100% your own work (in design, implementation, 

        wording, etc.), without a clear/visible citation of the source.

         Using another student's work as a template or reference for completing your own work.

         Using any unpermitted resources during an exam.

         Looking at, or attempting to look at, another student's answer during an exam.

         Submitting work that has been submitted before, for any course at any institution.

        All instances of academic dishonesty will be dealt with severely and according to SFU policy. This means 

        that Student Services will be notified, and they will record the dishonesty in the student's file. Students 

        are strongly encouraged to review SFU  s Code of Academic Integrity and Good Conduct (S10.01) available 

        online at: http://www.sfu.ca/policies/gazette/student/s10-01.html.

        Use of ChatGPT or Other AI Tools

        As mentioned in the class, we are aware of them. I see them as helpers/tutors from which you can look 

        for inspiration. However, these tools are not reliable and they tend to be overly confident about their 

        answers, sometimes even incorrect. It is also very easy to grow a reliance to them and put yourself at risk 

        of not actually learning anything and even committing academic dishonesty. Other issues include:

         When it comes to uncertainty, you won  t know how to determine what is correct.

         If you need to modify or fine tune your answer, you won  t know what to do.

         You will not be able to learn the materials and thus will not ne able to apply what you learn in 

        situations where no external help is available, for example, during exams and interviews.

        For introductory level courses and less sophisticated questions, it is likely that you  ll get an almost perfect 

        answer from these tools. But keep in mind if you can get the answer, everyone can also get the answer. 

        Bottomline is, if you ask these tools to give you an answer and you use the answer as yours, you are 

        committing academic dishonesty by claiming work that is not done by you as yours.

        Note that different instructors might have different policies regarding the use of these tools. Check with 

        them before you proceed with assignments from other courses.

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

         

        掃一掃在手機打開當前頁
      1. 上一篇:定制公式定制 通達信漲停王者系列指標公式
      2. 下一篇:代寫Implementation of Graph Algorithms
      3. 無相關信息
        合肥生活資訊

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

        關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

        Copyright © 2024 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
        ICP備06013414號-3 公安備 42010502001045

        主站蜘蛛池模板: 一区二区三区精密机械| 91一区二区三区四区五区| 日韩久久精品一区二区三区| 国产综合一区二区在线观看| 国产乱码精品一区二区三区香蕉 | 久久一本一区二区三区| 在线观看国产一区二区三区| 少妇无码一区二区二三区| 成人区人妻精品一区二区不卡视频| 精品国产一区二区三区AV| 91精品福利一区二区三区野战| 亚洲一区二区三区无码影院| 国模无码一区二区三区 | 国产高清在线精品一区| 国产亚洲无线码一区二区| 精品亚洲一区二区三区在线观看| 蜜桃视频一区二区三区| 国内精品视频一区二区三区八戒 | 中文字幕精品一区二区日本| 国产在线精品一区二区中文| 色狠狠色噜噜Av天堂一区| 国产成人高清视频一区二区| 一区二区三区在线视频播放| 国产精品成人一区无码| 国产成人精品一区二三区熟女 | 一区二区三区国产精品 | 国产伦精品一区二区三区无广告 | 精品一区二区三区色花堂| 亚洲第一区精品观看| 红杏亚洲影院一区二区三区| 中文字幕一区二区三区免费视频 | 在线观看国产一区二区三区| 国产成人精品无码一区二区老年人| 成人精品一区二区三区校园激情 | 天堂不卡一区二区视频在线观看| 日韩一区二区三区免费播放| 一区二区三区视频免费| 精品久久久久一区二区三区| 亚洲毛片αv无线播放一区| 色窝窝无码一区二区三区成人网站| 麻豆aⅴ精品无码一区二区|