$30
Notes for the Student: This Assignment is designed to give you experience with developing and demonstrating programming concepts using JavaScript.
Background: You will need to have access to a code editor and have a thorough understanding of JavaScript and Programming Fundamentals such as : variables, operators, expressions, conditionals, loops, arrays, functions, objects)
Assignment Submission Requirements
● Upload all JavaScript files used.
● This Assignment will not be accepted via email
Late Penalties
● Up to 1 day late (The highest mark you can achieve is 75%)
● Up to 2 days late (The highest mark you can achieve is 60%)
● Up to 3 days late (The highest mark you achieve is 50%)
● > 3 days late = 0 MARKS
Detailed Specification
This assessment must be completed individually.
You have been hired as a programmer by the college to write a script using JavaScript that will generate a student’s transcript for anUndergraduate student.
A student’s transcript will display:
● All the course the student did; and,
● The grade they earned for the courses.
The transcript must also display the student’s GPA.
Feature 1
You are required to create a fake “database”, i.e, an object array, that stores at least 5 courses, similarly to the below :
Course Code
Course Title
Course Credit
WEB222
Web Programming Principles
3
WEB322
Web Programming Tools & Frameworks
3
IPC244
Introduction to Programming Using C
3
JAV745
Java Programming
3
OOP244
Introduction to Object Oriented Programming
3
Note, each object in the array must store : a course code, title and course credit.
Feature 2
User Interface:
The user will interact with the script through the console.
When launched, the program MUST ask the user to enter ALL of the following:
● Student ID number
● Student First Name
● Student Last Name
● The number of courses did in the above semester (eg. 3)
FOR EACH COURSE, the program MUST prompt the student for the below course information:-
● Course Code (example: JAVA745)
● Mark received in the course (example: 90)
Validation :
When the user enters a course code, your script must search the “fake database” (array of courses objects) to see if the course code entered in the console exists in the “fakeDB”. This is done by traversing through the array to see if the course code entered matches a course code that exists in the “fake database” (array of course objects). If an invalid code is entered, the script must continue to prompt the user until they enter a valid one.
When the user enters a valid course code, your script must pull all the other information for that course, from the “fake database”, as it would be needed later on in the script. For example, if the user enters WEB322 as the course code, your script must be able to access and maintain all other information associated with the course.
Feature 3
GPA Calculation Formula
Here is the formula for calculating an undergraduate student’s semester GPA.
Semester GPA = total course points total credits earned
Total course points is the sum of all course points across all of the student’s courses.
Total course points = course points for course 1 + course points for course 2 +
course points for course 3 +
... + etc
Course points are calculated on a per course basis:
Course points = grade value points earned in course x course credits
Student Grading Scheme and Grade Value Table
Grade
Grade Description
Marks(%)
Grade Value
Points
A
Excellent
90-100
4
B
Good
80-89.9
3.0
C
Average
70-79..99
2
D
Minimum Passing Grade
60-69.9
1
F
Failure
0.0-59.9
0
After the student completes entering all relevant data, the program should then print their transcript, listing the following information.
1. Student’s name,
2. Student’s ID No.
3. The following Course Information FOR EACH COURSE:
a. Course Code
b. Course Title
c. Mark Received
d. Grade
4. Student’s GPA
Feature 4
Your Script must be developed with modularity in mind thus, I want to see you create appropriate functions throughout your script
Sample Output
EXAMPLE 1
Enter Student First Name: Shantelle
Enter Student Last Name :Roberts
Enter Student ID : 000136
Enter the number of courses you did in the above semester: 2
Enter Course Code: ITEC133
Enter Course Title: Programming 1
Enter Number of Course Credits:3
Enter Mark received in course: 92.65
Enter Course Code:ITEC235
Enter Course Title: Object Oriented Programming 1
Enter Number of Course Credit:3
Enter Mark received in course: 82
Thanks, displaying student transcript:
STUDENT TRANSCRIPT
Name : Shantelle Roberts
ID: 000136
Semester Code: 201510
Semester No: 1
Course Code:ITEC133
Course Title: Programming1
Mark: 92.65
Grade:A
Course Code:ITEC235
Course Title: Object Programming1
Mark: 82
Grade:B
Student GPA:3.5