99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

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

代寫CMPT 125、代做Computing Science

時(shí)間:2023-12-02  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)



Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 1 of 6 © Victor Cheung, 2023
Assignment 4 (10% of Course Total)
Due date: 11:59pm, Dec 1 Dec 3, 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. While you still
can include any libraries that are covered in class, read the sections below to see how C++-compatible or
C++-specific versions should be used. 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&3 by providing more
functionalities. You are also again going to write your own main function so the program runs. In addition,
you are going to implement everything in C++.
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 – 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 with all subsequent choice of other option
asking the user to load a talks file), 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 and has no space.
• Option 2: to list talks sorted by duration – 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 – 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 – 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.”
Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 2 of 6 © Victor Cheung, 2023
You can assume the user will always enter at most 50 characters.
• Option 5: to add a talk – ask the user for all the information for a talk (duration, talk, overview)
and add it to the currently loaded entries. After adding, report and print “Entry added.”
o There is no need to check for duplicates. You can assume the input format is correct.
o Check for invalid duration: hours that are <0 and minutes/seconds that are <0 or >=60. If
that happens, inform the user and keep asking for a valid hours and minutes/seconds.
• Option 6: to save a talks file – ask the user to input the name of a file to which the current entries
will be saved in the same format as the sample files. It is possible for the name to be the same as
the file just being loaded. If so, it will be overwritten. Report # entries saved when done.
• Option 7: to terminate the program – thank the user and end the program.
Options **4&7 are basically the same as Assignment 3. Yet, there are also some differences. In particular,
since a vector is now used to store the talk entries, some functions that were defined in talklib previously
are now moved to better organize functions according to class definitions. Pay attention to the
provided .hpp files for details.
Your program must meet these requirements:
• Include the provided header file (.hpp file) and use the functions defined in the corresponding
implementation file (.cpp file) in your driver file (where main is), do not redefine those functions.
• Use the vector template in C++ (see https://www.programiz.com/cpp-programming/vectors) in
combination of the Talk struct defined in a4_talklib to store and handle the talk information. This
allows different numbers of talk entries and lets you practice using templates.
• Although C++ supports most of the operations in C, any operations we covered in the lecture
replacing C must be used. This includes: console I/O must be done by cin/cout (see iostream),
file I/O must be done by fin/fout (see fstream), text must be done by the string class, and
memory management must be done by new/delete.
• 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 in Assignment 3 is done using the built-in qsort. Instead, use the builtin sort from C++ (see https://cplusplus.com/reference/algorithm/sort/).
*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 – no need to worry.
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.
o Getting the user to input a valid input is exactly the same, with the repeating condition
being the input invalid (e.g., 0>userInput || userInput >=60).
Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 3 of 6 © Victor Cheung, 2023
• The built-in sort from C++ (defined in <algorithm>) can sort items in different kinds of container
classes as long as they provide access to the items using an “iterator”, which is a common design
pattern in Object-Oriented Programming. Refer to our lecture examples and the reference link
above for details. Also pay attention to how the compare function pointer works.
• The way things are being read from the console and file is simplified with cin and fin. Besides the
>> operator, there is a getline function for strings. Use it like this: getline(cin, stringVariable), or
this after an int is read: getline(cin >> ws, stringVariable). You are encouraged to explore why.
Here are some sample input and output (you can assume user input is always valid):
Figure 1. Choosing an option without opening any file then opening an existing file.
Figure 2. Listing talks sorted by duration (only showing the first 2 here for space).
Figure 3. Looking up a talk but no entries in the list.
Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 4 of 6 © Victor Cheung, 2023
Figure 4. Adding a talk to the list (it’s the shortest so Option 2 shows it first).
Figure 5. Saving the entries to a file (77 entries were loaded at start, adding 1 makes it 78).
Include the function definitions corresponding to a4_talklib.hpp (and your helper functions, if any) in a
source file named as a4_talklib.cpp. Do the same for a4_talkList. Both the .hpp files are provided to help
you get started. They are adequate to complete this assignment, but if you want you can add/remove
functions as appropriate – as long as they fulfill all the requirements stated above.
Include your main function (and your helper functions, if any) in another source file named as
a4_talkLookupSystem.cpp. 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; and if it provides functionality that
directly accesses private members of the talkList, it should be a member function of talkList. Incorrectly
placing these functions will lead to mark deductions in the Coding Style category.
Coding Style [4 marks]
Your program should be properly indented, have clear and meaningful variable names (e.g., no singleletter 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.
Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 5 of 6 © Victor Cheung, 2023
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 4):
$ 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 files are there to make the compilation work. Take a look at them for information about how
each function should work. You might have to modify them and you will have to submit them this time.
Submission
Submit only the 5 source files (a4_talklib.hpp, a4_talklib.cpp, a4_talkList.hpp a4_talkList.cpp,
a4_talkLookupSystem.cpp) 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
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
Assignment 4 CMPT 125 Intro. To Computing Science & Programming II Spring 2023
Page 6 of 6 © Victor Cheung, 2023
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.
請(qǐng)加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

掃一掃在手機(jī)打開當(dāng)前頁(yè)
  • 上一篇:CS3214代做、代寫Java,C++程序語(yǔ)言
  • 下一篇:代做 COMP33 Modern Technologies程序語(yǔ)言代做
  • 無相關(guān)信息
    合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計(jì)優(yōu)化
    出評(píng) 開團(tuán)工具
    出評(píng) 開團(tuán)工具
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
    海信羅馬假日洗衣機(jī)亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
    海信羅馬假日洗衣機(jī)亮相AWE 復(fù)古美學(xué)與現(xiàn)代
    合肥機(jī)場(chǎng)巴士4號(hào)線
    合肥機(jī)場(chǎng)巴士4號(hào)線
    合肥機(jī)場(chǎng)巴士3號(hào)線
    合肥機(jī)場(chǎng)巴士3號(hào)線
    合肥機(jī)場(chǎng)巴士2號(hào)線
    合肥機(jī)場(chǎng)巴士2號(hào)線
    合肥機(jī)場(chǎng)巴士1號(hào)線
    合肥機(jī)場(chǎng)巴士1號(hào)線
  • 短信驗(yàn)證碼 豆包 幣安下載 AI生圖 目錄網(wǎng)

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

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

    99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

          9000px;">

                91在线你懂得| 精品国产乱码久久久久久图片 | 国产成人av福利| 精品久久人人做人人爱| 国产在线国偷精品产拍免费yy| 久久精品一区二区三区不卡| k8久久久一区二区三区| 亚洲一区影音先锋| 日韩欧美久久一区| av午夜一区麻豆| 日韩制服丝袜av| 国产欧美一区二区三区在线看蜜臀 | 日韩一区二区精品葵司在线| 久久se这里有精品| 亚洲激情在线播放| 精品久久99ma| 一本高清dvd不卡在线观看| 日韩制服丝袜先锋影音| 国产精品少妇自拍| 欧美一区2区视频在线观看| 成人激情图片网| 爽好多水快深点欧美视频| 久久久精品欧美丰满| 色欧美日韩亚洲| 国产馆精品极品| 天天综合日日夜夜精品| 亚洲天堂免费在线观看视频| 日韩免费视频线观看| 91激情五月电影| 成人国产精品免费观看| 蜜臀a∨国产成人精品| 亚洲女人****多毛耸耸8| 久久女同精品一区二区| 欧美一区日韩一区| 在线亚洲一区二区| 91在线小视频| 99综合影院在线| 国产成人综合在线| 国产一区在线不卡| 男男视频亚洲欧美| 亚洲韩国精品一区| 亚洲欧美在线观看| 精品视频免费在线| 一本色道**综合亚洲精品蜜桃冫| 国产成人在线视频免费播放| 视频一区视频二区中文| 亚洲国产aⅴ天堂久久| 亚洲欧美日韩国产成人精品影院| 国产精品美女www爽爽爽| 久久综合九色综合97婷婷| 日韩一级大片在线观看| 91精品国产福利| 777亚洲妇女| 91麻豆精品国产自产在线| 欧美日韩国产123区| 91激情在线视频| 在线观看亚洲a| 欧美日韩精品欧美日韩精品一综合| 91看片淫黄大片一级在线观看| av午夜一区麻豆| 色综合久久中文字幕| 日本丰满少妇一区二区三区| 欧美日韩亚洲丝袜制服| 337p亚洲精品色噜噜狠狠| 91.xcao| 精品国产凹凸成av人网站| 久久久久久亚洲综合影院红桃| 国产网站一区二区| 中文字幕日韩av资源站| 一个色妞综合视频在线观看| 亚洲一区二区三区四区在线观看| 舔着乳尖日韩一区| 国产中文字幕精品| 91视频一区二区三区| 欧美日韩1234| 欧美成人bangbros| 国产精品第四页| 五月天久久比比资源色| 国产在线视频精品一区| 99re视频精品| 欧美男男青年gay1069videost| 欧美一级欧美一级在线播放| 中文字幕国产一区| 亚洲一级二级在线| 国产麻豆视频精品| 一本色道久久综合亚洲精品按摩| 欧美一区二区视频在线观看2020| 久久久精品综合| 亚洲成人综合网站| 风间由美一区二区av101| 欧美日韩综合在线免费观看| 国产亚洲欧洲997久久综合 | 欧美一级理论片| 国产欧美一区二区三区网站| 亚洲一区二区影院| 国产成人免费在线观看| 精品视频123区在线观看| 欧美高清在线精品一区| 日韩主播视频在线| 在线观看www91| 欧美激情在线一区二区| 日本视频中文字幕一区二区三区| 成人免费看的视频| 欧美刺激脚交jootjob| 一区二区不卡在线视频 午夜欧美不卡在| 国内精品嫩模私拍在线| 欧美一区二区三区日韩| 悠悠色在线精品| eeuss鲁片一区二区三区在线看| 日韩一区二区三区视频在线观看| 亚洲精品菠萝久久久久久久| 懂色中文一区二区在线播放| 精品毛片乱码1区2区3区| 日韩不卡一区二区| 欧美日本在线一区| 午夜伦欧美伦电影理论片| 91国在线观看| 亚洲一区二区三区影院| 色婷婷综合久久久久中文一区二区 | 久久嫩草精品久久久精品一| 性欧美疯狂xxxxbbbb| 91福利小视频| 亚洲女与黑人做爰| 国产成人精品一区二区三区四区| 欧美变态凌虐bdsm| 久草这里只有精品视频| 日韩精品一区二| 国产一区二区三区黄视频| 久久亚洲精品国产精品紫薇| 国产曰批免费观看久久久| 久久久久99精品一区| 亚洲国产视频一区| 欧美影片第一页| 婷婷丁香激情综合| 91麻豆精品国产91久久久资源速度| 午夜影院久久久| 日韩一区二区三区免费看| 久久99精品国产91久久来源| 国产日韩欧美在线一区| 99精品视频中文字幕| 一区二区三区欧美视频| 欧美日韩国产欧美日美国产精品| 日本在线不卡视频| 久久嫩草精品久久久久| 成人精品视频网站| 最新不卡av在线| 欧美偷拍一区二区| 麻豆精品久久久| 中文字幕国产一区二区| 欧美网站一区二区| 国内精品国产成人国产三级粉色| 亚洲欧洲日韩一区二区三区| 欧美日韩三级一区| 国产精品一区二区久激情瑜伽| 中文字幕制服丝袜一区二区三区| 欧美在线你懂的| 国产一区亚洲一区| 一区二区三区影院| 欧美精品一区二区在线观看| 97se亚洲国产综合自在线不卡| 日韩国产欧美在线播放| 欧美激情在线一区二区三区| 欧美午夜精品免费| 蜜臀久久久久久久| 91首页免费视频| 久久er99精品| 亚洲精品ww久久久久久p站| 欧美电视剧免费全集观看| www.色精品| 国内精品国产成人| 一级日本不卡的影视| 久久亚洲综合色一区二区三区| 色综合色综合色综合色综合色综合| 免费欧美高清视频| 一区二区三区丝袜| 国产精品沙发午睡系列990531| 91精品国产综合久久精品图片| 99久久综合99久久综合网站| 经典三级视频一区| 三级亚洲高清视频| 国产精品久久久久久久久搜平片 | 亚洲国产精品黑人久久久| 欧美一区二区三区在线| av亚洲精华国产精华精| 国产精品资源站在线| 久久激情五月激情| 久99久精品视频免费观看| 日本不卡视频一二三区| 亚洲国产精品精华液网站| 一区二区三区在线观看国产 | 亚洲情趣在线观看| 中文字幕乱码久久午夜不卡| 久久精品无码一区二区三区| 日韩欧美一区二区免费| 欧美精品久久99| 欧美一区二区三区系列电影| 91麻豆精品国产自产在线 | 欧美一区二区福利视频| 在线成人免费观看| 欧美日韩激情一区二区|