Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

TMF1434 – Data Structure & Algorithms – Pair Assignment

TMF1434 – Data Structure & Algorithms


Assignment – Reading Book Reward Program
Sem 2,2023/2024
Due Date - 2 May 2024 (Thursday) @ 5.00pm

1 Introduction

This is a pair assignment and it contributes 15% out of the total grade of this course.

2 Objectives

 To evaluate student’s skills at writing an object-oriented program using C++ programming


language;
 To apply array-based list data structure in solving the problem.

3 Descriptions

The Reading Book Reward Program is introduced to students through a dedicated literacy assembly,
emphasizing the importance of reading and the benefits of developing a lifelong reading habit. Students are
captivated by the idea of earning rewards for their reading efforts and eagerly sign up for their personalized
accounts, providing their name and grade to initiate their reading journey.

As the academic year progresses, students actively engage with the program, diligently logging the books
they read and tracking their reading progress. They input details such as the title, author, and completion
date of each book, taking pride in their accomplishments as they accumulate virtual currency or points for
every book completed.

Students explore a wide range of literary genres and authors, expanding their literary horizons with each
new book they read. The program encourages them to set ambitious reading goals, whether it's a certain
number of books to finish within a month or exploring a particular genre they haven't explored before.

The program's analysis feature allows students to visualize their reading progress over time. They can track
the total number of books read, the average number of books per week or month, and see how their reading
habits evolve throughout the school year. This reflection enables students to identify patterns, set new
goals, and celebrate their reading milestones.

The program includes a feature that encourages children to explore diverse literature by highlighting books
from different cultures, backgrounds, and perspectives. This promotes inclusivity, empathy, and
understanding among young readers, fostering a broader appreciation for the richness and diversity of the
world's stories.

Page 1 of 3
TMF1434 – Data Structure & Algorithms – Pair Assignment

At the end of the academic year, students come together for a celebratory event dedicated to literacy and
reading achievements. They share their favourite books, recommendations, and personal reading journeys
with their peers, showcasing the impact of the Reading Book Reward Program on their love for reading and
their development as lifelong learners.

4 Assignment Requirements

Develop a user-friendly Reading Book Reward Program in C++. Put your creativity and logical thinking to

design classes that meet their specific needs and allow them to manage their tasks with ease, including
creating, editing, deleting, and viewing tasks.

a) Children can easily create individual accounts by providing basic information such as their name and
age.
b) Each account allows for customization of reading goals, preferences, and personalization of avatars or
profiles.
c) The program must highlight books from various cultures, backgrounds, and perspectives.
d) The program offers a user-friendly interface for logging the books children read, including options to
input title, author, and genre.
e) Automatic tracking of reading progress, with the ability to mark books as completed and record
reading dates.
f) The program encourages students to set ambitious reading goals, whether it's a certain number of
books to finish within a specific time frame or exploring new genres.
g) Children earn virtual currency or points for each completed book, with rewards tailored to their
interests and preferences.
h) Rewards may include virtual badges, unlockable content, and access to special events or activities
within the program.

Note: It is important to adhere to good software engineering practices while implementing this system. Use
appropriate naming conventions, separation of concerns, encapsulation, and error handling.

Your program must meet the following requirements:


a) Create a minimum of 3 and a maximum of 5 classes for your solution, applying the 3 OOP principles:
encapsulation, inheritance, and basic polymorphism in your class design.
b) Each class should have at least one (1) new attribute and one (1) constructor.
c) Each class should include at least one (1) method for accessing or manipulating class attributes, such
as getters, setters, utility, display methods, or any other relevant methods for the class functionality.
d) Create arrays to store the details of the virtual pets objects in various categories.
e) Your program should operate continuously until the user chooses to terminate the program;
f) Include at least five (5) pre-set data entries in your program, such as Pochitchi, Mochatchi, Sebiretchi,
etc. Your program should display all this information using the "View All" function upon execution.

Page 2 of 3
TMF1434 – Data Structure & Algorithms – Pair Assignment

g) Submit a report containing a UML class diagram and screenshots of your program outputs with
descriptions. Your report should not exceed five (5) pages (excluding the front cover).
h) Report Format: Font Type - Times New Roman; Font Size – 12; Line Spacing - 1.5; and paragraph text
arrangement - justified. The font size used in the program screenshots and UML diagram should be
similar to Times New Roman, size 12.

5 Submission

 All documents must be submitted via the link provided in eLEAP by 2 May 2024 (Thursday) at
5:00pm. Any late submission will incur a penalty deduction of 20% of the assignment mark per day.
 Submit your assignment in a zipped file containing your report (.pdf) and working C++ source codes
(*.h, *.cpp). Use the following zipped file naming format for submission:
AssignGroup_ListOfMatricNo#.zip
E.g., AssignG01_12345_45625.zip
 Each pair is required to submit only one copy of the group assignment.
 Files submitted in an incorrect format will not be accepted.
 Any plagiarism (more than 50% similarity between two files) will result in both files being graded
as zero.
 Attach snapshots or files showing evidence of your team's online collaborations in your report (e.g.,
social media chats, emails, collaboration tool screenshots, etc.).

Page 3 of 3

You might also like