Write a program that will take this dictionary: gradePoints = {"A":4,"B":3,"C":2,"D":1,"F":0} and this list: courseList = ["CST 161","Mat 144","ENG 201","PSY 101","HIS 101"] and randomly use elements from each of these lists : gradeList = ["A","B","C","D","F"] creditList = [3,4] and produce a grade point average. Academic average is determined by dividing the total number of quality points earned by the total number of credits taken, whether passed or failed. The following table is an illustration of this computation: GRADE & QUALITY NUMERICAL POINTS Course . . . Credits Value Per Course HIS 101. . . . . .3 C    (2) 6 PSY 101. . . . . 3 B    (3) 9 MAT 144. . . . 4 D    (1) 4 ENG 201. . . .  3 B+ (3.5) 10.5 CST 161. . . . . 3 F     (0) 0 Total credits taken: 16 Total quality points earned 29.5 29.5 divided by 16 results in a 1.8 grade point average. Here the gradeList element will be embedded as the key in referencing the grade points.   (e.g. gPoints = gradePoints[random gradeList element]) (e.g. creditHours = random creditList element).  To get a random list element, use the randint method with a range of (0,len(list)).   That will be multiplied by the gPoints per course. Multiply them to get the the valuePerCourse for the that course. (e.g. valuePerCourse = (creditHours * gPoints), this will yield the value for that course. For each course (each pass through the loop), add creditHours to totalCredits and add valuePerCourse to qualityPoints qualityPoints  divided by total Credits results in a GPA. Display each course with their grade, and the value per course. Display the quality points and the GPA.   Display the proper string literals that will identify your output.   After you are done, Add the logic to read the Courses, grades and credits from a file.   Ex.  CST 161 A 4 ENG 101 B 3 MAT 119 B 4 Process these courses, grades and credits in your program instead of using the courseList, gradeList and creditList.   Submit that file.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Write a program that will take this dictionary:

gradePoints = {"A":4,"B":3,"C":2,"D":1,"F":0}

and this list:

courseList = ["CST 161","Mat 144","ENG 201","PSY 101","HIS 101"]

and randomly use elements from each of these lists :

gradeList = ["A","B","C","D","F"]

creditList = [3,4]

and produce a grade point average.

Academic average is determined by dividing the total number of quality
points earned by the total number of credits taken, whether passed or
failed. The following table is an illustration of this computation:
GRADE & QUALITY NUMERICAL POINTS
Course . . . Credits Value Per Course
HIS 101. . . . . .3 C    (2) 6
PSY 101. . . . . 3 B    (3) 9
MAT 144. . . . 4 D    (1) 4
ENG 201. . . .  3 B+ (3.5) 10.5
CST 161. . . . . 3 F     (0) 0

Total credits taken: 16
Total quality points earned 29.5
29.5 divided by 16 results in a 1.8 grade
point average.

Here the gradeList element will be embedded as the key in referencing the grade points.  

(e.g. gPoints = gradePoints[random gradeList element])

(e.g. creditHours = random creditList element). 

To get a random list element, use the randint method with a range of (0,len(list)).  

That will be multiplied by the gPoints per course.

Multiply them to get the the valuePerCourse for the that course.

(e.g. valuePerCourse = (creditHours gPoints), this will yield the value for that course.

For each course (each pass through the loop),

add creditHours to totalCredits and

add valuePerCourse to qualityPoints

qualityPoints  divided by total Credits results in a GPA.

Display each course with their grade, and the value per course.

Display the quality points and the GPA.  

Display the proper string literals that will identify your output.  

After you are done, Add the logic to read the Courses, grades and credits from a file.  

Ex. 

CST 161 A 4
ENG 101 B 3
MAT 119 B 4

Process these courses, grades and credits in your program instead of using the courseList, gradeList and creditList.  

Submit that file.  

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Follow-up Questions
Read through expert solutions to related follow-up questions below.
Follow-up Question

Could you help me with this error?

The image displays a Python script and its execution environment in IDLE. The script is meant to calculate grades for various courses. Below is a breakdown of the code and the resulting error message.

### Python Script Explanation:

1. **Imports**:
   - `import random`: This library is used to generate random numbers.
   - `from tabulate import tabulate`: This line attempts to import the `tabulate` module for formatting data in tables.

2. **Data Initialization**:
   - `gradePoints`: A dictionary mapping letter grades to numeric values. For example, `"A":4`.
   - `courseList`: A list of course codes like `["CST 161", "Mat 144", "ENG 202"]`.
   - `gradeList` and `creditList`: Lists defining possible grades (`["A", "B", "C", "D", "F"]`) and corresponding credits (`[3, 4]`).

3. **Variables**:
   - `data`: An empty list to store course data.
   - `total_credit` and `sums`: Variables to accumulate credit hours and total grade points.

4. **User Input and Processing**:
   - The user is prompted to enter the number of courses.
   - Random courses, credits, and grades are generated, and their information is appended to `data`.

5. **Output**:
   - The `tabulate` function should be used to print the data in a formatted table, followed by the total credits, quality points, and overall grade.

### Error Message:

- **ModuleNotFoundError**: `No module named 'tabulate'`
  - This error indicates that the script attempts to use the `tabulate` module, which is not installed in the Python environment. To resolve this, the `tabulate` module needs to be installed, typically via a package manager like pip (`pip install tabulate`).

This code snippet demonstrates basic operations for GPA calculation, but it encounters an import error due to a missing external library.
Transcribed Image Text:The image displays a Python script and its execution environment in IDLE. The script is meant to calculate grades for various courses. Below is a breakdown of the code and the resulting error message. ### Python Script Explanation: 1. **Imports**: - `import random`: This library is used to generate random numbers. - `from tabulate import tabulate`: This line attempts to import the `tabulate` module for formatting data in tables. 2. **Data Initialization**: - `gradePoints`: A dictionary mapping letter grades to numeric values. For example, `"A":4`. - `courseList`: A list of course codes like `["CST 161", "Mat 144", "ENG 202"]`. - `gradeList` and `creditList`: Lists defining possible grades (`["A", "B", "C", "D", "F"]`) and corresponding credits (`[3, 4]`). 3. **Variables**: - `data`: An empty list to store course data. - `total_credit` and `sums`: Variables to accumulate credit hours and total grade points. 4. **User Input and Processing**: - The user is prompted to enter the number of courses. - Random courses, credits, and grades are generated, and their information is appended to `data`. 5. **Output**: - The `tabulate` function should be used to print the data in a formatted table, followed by the total credits, quality points, and overall grade. ### Error Message: - **ModuleNotFoundError**: `No module named 'tabulate'` - This error indicates that the script attempts to use the `tabulate` module, which is not installed in the Python environment. To resolve this, the `tabulate` module needs to be installed, typically via a package manager like pip (`pip install tabulate`). This code snippet demonstrates basic operations for GPA calculation, but it encounters an import error due to a missing external library.
Solution
Bartleby Expert
SEE SOLUTION
Knowledge Booster
Lists
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education