quizzes, assignments (as1, as2, as3, as4, as5), midterm exam, final exam
If there are any issues with the above grades, please contact the teacher as soon as possible. The final semester grades will be submitted in about ten days.
The results of the final exam. (answer paper)
Each multiple choice question (select one or more answer choices) is worth 4 points, and each question has four choices. You get -2 points whenever your choice is different from the correct answer, until the score of this question reaches 0. For example, if the correct answer is BE: Selecting only B earns 2 points. Selecting BC results in a score of 0 points.
Final exam results are expected to be announced on January 2.
(12/30) The results for Assignment 5 are out and will not be updated, as the deadline has already passed.
An accuracy of -1 indicates that the C++ compiler displays error messages during compilation.
Test all the input-output samples if your accuracy is not 100.
Pay attention to whether the variables are properly initialized and whether any "index out of range" issues occur.
Final Exam
12/26, 9:10 am @ EC 2010
paper-and-pencil exam, closed-book, calculators and mobilephones are not allowed
Exam scope: materials covered between 11/14 ~ 12/19
Please sit according to the seating chart.
(12/24) Quiz results
Each weekly quiz consists of 3 questions, with each question worth 25 points. Attendance is also worth 25 points, making the total score for the quiz 100 points.
The recorded lecture video from 12/19 has been uploaded and can be accessed through this link.
(12/16) The results of Assignment 4 are out and will not be updated, as the deadline has already passed.
An accuracy of -2 might be due to the following reasons.
Read the instructions of Assignment 4 carefully, and refer to the code template.
The extra newline after "Enter the scores for each student: " in the sample output is caused by user input, not by your program's output.
Do not modify readStudentGrades() and displaySemesterGrades().
Test all the input-output samples if your accuracy is not 100.
Pay attention to whether the variables are properly initialized and whether any "index out of range" issues occur.
Plagiarism is strictly forbidden. If proven, it will result in a zero for the assignment. The teacher has noticed instances of suspected plagiarism among some students.
The teaching evaluation survey will be conducted on 12/12, followed by a roll call for the class. Please remember to attend.
Assignment 5 has been posted, with a deadline of 12/27.
Please submit the assignment using the provided email link. Ensure that the attached file is named with your student ID; otherwise, it will not be graded.
(12/2) The results of Assignment 3 are out and will not be updated, as the deadline has already passed.
An accuracy of 0 might be due to the following reasons.
Your output must be exactly the same as those in the provided samples.
Refer to the code template to understand the required output format.
If the accuracy is less than 100, test all the provided samples and verify that no "index out of range" errors occur.
The lecture video from 11/28 has been uploaded and can be accessed through this link.
The recorded lecture video from 11/21 has been uploaded and can be accessed through this link. The video has no sound due to a recording equipment issue. This link contains lecture videos from the previous year.
Assignment 4 has been posted, with a deadline of 12/12.
Please submit the assignment using the provided email link. Ensure that the attached file is named with your student ID; otherwise, it will not be graded.
Be sure to carefully read the instructions for Assignment 4, and review the code template to understand the required output formats.
The results of the midterm exam. (answer paper)
Each multiple choice question (select one or more answer choices) is worth 4 points, and each question has four choices. You get -2 points whenever your choice is different from the correct answer, until the score of this question reaches 0. For example, if the correct answer is BE: Selecting only B earns 2 points. Selecting BC results in a score of 0 points.
Assignment 3 has been posted, with a deadline of 11/28.
Please submit the assignment using the provided email link. Ensure that the attached file is named with your student ID; otherwise, it will not be graded.
Be sure to carefully read the instructions for Assignment 3, and review the code template to understand the required output formats.
Midterm Exam
10/31, 11/7, 9:10 am @ EC 2010
paper-and-pencil exam, closed-book, calculators and mobilephones are not allowed
Exam scope: materials covered between 9/12 ~ 10/24
Please sit according to the assigned seats.
The midterm exam originally scheduled for 10/31 is postponed to the next class on 11/7 due to the typhoon holiday. However, the deadline for Assignment 2 remains unchanged, and Assignment 3 will be announced on 11/7.
(11/4) The results of Assignment 2 are out and will not be updated, as the deadline has already passed.
An accuracy of -1 indicates that the C++ compiler displays error messages during compilation.
An accuracy of 0 might be due to the following reasons.
Incorrect output format:
Your output must be exactly the same as those in the provided samples.
Do not output any extra line breaks or spaces not specified in the assignment. Refer to the code template to understand the required output format.
Here are some common incorrect samples:
It is recommended to first understand the common mistakes and their causes mentioned above before starting the assignment. If you don't understand them, there is a high probability that your program output will also be incorrect.
Copy the program output to notepad.exe, select the font 'Courier New' (the purpose is to make the characters display with equal width), then select all and highlight it. This way, you can check if there are any extra spaces.
Please watch the lecture video from 10/3 on your own. The quiz on 10/17 will cover the material from that class.
Assignment 2 has been posted, with a deadline of 11/1.
Please submit the assignment via the provided email link, otherwise, it cannot be graded.
Be sure to carefully read the instructions for Assignment 2, and review the code template in order to understand the required output formats.
(10/14) The results of Assignment 1 are out and will not be updated, as the deadline has already passed.
An accuracy of 0 might be due to the following reasons.
Incorrect output format:
Your output must be exactly the same as those in the provided sample (refer to the video).
Avoid adding extra line breaks or omitting any required strings specified in the assignment.
Be sure to carefully read the instructions for Assignment 1, and review the code template in order to understand the required output formats. Do not remove the space after the colon!
Ensure that each variable is properly initialized; otherwise, it may result in undefined behavior.
Assignment 1 does not require the use of arrays. However, if you choose to use them, ensure the array index remains within the valid range. Accessing an index outside the bounds of the array (out of range) may result in undefined behavior.
A YouTube live stream will take place on 10/3 at 9:10 AM, primarily to record the class for students to watch and learn at their own pace.
Not attending the live session will not affect your grade.
The link for the stream will be shared before the class starts.
On 10/10, due to the National Day holiday, there will be no class, live stream, or recording, but Assignment 2 will be announced.
Assignment 1 has been posted, with a deadline of 10/10 (Please submit the assignment via the provided email link, following the submission rules; otherwise, it cannot be graded).
Make sure to thoroughly read the instructions before starting.
Do not send links to documents on the cloud. Send real cpp files.
The accuracy results for Assignment 1 will be updated weekly until the deadline. For example, if you submit your assignment by 10 PM on 9/25, you can view your program's accuracy on 9/26. If it's not 100%, you may revise and resubmit the assignment. This policy also applies to all other assignments.
On 9/19, a quiz will be conducted using zuvio. Please test whether you can log into the system beforehand. If you log in successfully, you should see a question open for response. (zuvio howto)
Instructor: 魏家博 (Chia-Po Wei)
To contact Teacher:
cpwei@mail.nsysu.edu.tw (Remember to mention your name, student ID, and class)
To send assignments:
cpwei@g-mail.nsysu.edu.tw
Lecture: Thursday 9:10 ~ 12:00 am @ EC 2010
Teaching Assistants: 張勝濱、郭宇倫、許人中、劉宜叡、林昱夆、林沅錞
TA Hours: Monday 17:00~19:00, Tuesday 16:10~18:00 @ 工EC 8011
Course Website: http://bit.ly/nsysu-prog-en-2024 (QR code)
Online IDE: onlinegdb, jdoodle, cpp.sh (before sending assignments you can use online IDE to check your programs)
Offline IDE:
Code-Blocks (download codeblocks-20.03mingw-setup.exe)
File -> New -> File -> C/C++ source -> Next -> select C++ -> enter your file path
If your OS is Mac, you can use Xcode.
Midterm Exam: 25%
Final Exam: 25%
Quizzes: 10%
Zuvio: Search "zuvio 校園" in the app store of your mobile phone. (Do not select other versions of Zuvio, otherwise you will not be able to see the course contents.)
Course Title (課程名稱):學期 113-1 Computer Programming (Thu)
Course Code (課程代碼):129897629
Account: studentID@mail.nsysu.edu.tw (The first letter of studentID is in uppercase.)
This account is automatically generated by your student ID.
Please avoid registering a new account unless absolutely necessary.
If you must register a new account, make sure to use your real name so that I can identify you.
This account is not the same as the school email address @student.nsysu.edu.tw
Password: 123 (You can modify the default password to avoid misuse.)
If you use the default password, it is recommended that you change it. Some students have mistakenly used other people’s accounts to log in.
There are no make-up exams for quizzes. If you need to take a leave, please attach related documents.
Do not take the quiz for other students, otherwise you get a zero for your quiz grades.
Assignments: 40%
Send your assignment to cpwei@g-mail.nsysu.edu.tw
Follow the rules to send assignments, otherwise your assignments will not be processed.
Use the following link to send assignments (require Chrome & gmail).
Email link for Assignment 4, Email link for Assignment 5
The file name of the email attachment should include your student ID, otherwise your assignment will not be processed. Remember to check your sent folder. If you find a mistake was made, just fix it and resend the email.
The assignments are designed for beginners. You should be able to finish the assignments independently.
It is recommended to use the TA hours if you have problems of doing the assignments.
Plagiarism Is strictly prohibited. We will use programs to check plagiarism. If plagiarism is proved, you get a zero for your assignments.
You can discuss the assignments with classmates. But you are not allowed to see their source code when doing the assignments. Such behavior constitutes plagiarism.
It is recommended that you sent your assignments as early as possible. Because if mistakes are found, you will have a chance to fix the mistakes before the deadline. Late assignments will not be accepted.
All the grades will be announced on the course website. Once the grades are announced, if you have any problems, you should contact the teacher within two weeks.
Walter Savitch and Kenrick Mock, Absolute C++, 6th Edition, Pearson, 2016.
ISBN-13: 978-1-292-09859-3, ISBN-10: 1-292-09859-7, Book Cover, TWD $1350
Textbook Agent: 開發圖書公司, 0916-709-655 (甘先生)
The above textbook agent offers discount prices for group buying, or you can search other textbook agents that offer a lower price.
It is not mandatory to buy the textbook, but the textbook provides detailed descriptions of concepts or programming terminology, which are useful for beginners.
There is no need to use the latest version (6th edition). You can also use the 5th edition. (Table of contents of the 5th edition)