Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

C++ Prompt Create pseudocode for loading data into the vector data structure, and then using it to store and print that data. There will be

C++

Prompt

Create pseudocode for loading data into the vector data structure, and then using it to store and print that data. There will be no programming work in this milestone; you will be developing pseudocode that will help you implement your design in Project One.

Please note: Throughout this milestone, we are going to use the word course to refer to the courses in the curriculum instead of class, which has another meaning in object-oriented programming.

For this milestone, you will:

Design pseudocode to define how the program opens the file, reads the data from the file, parses each line, and checks for file format errors. The Course Information document, linked in the Supporting Materials section, contains all the information about all of the courses required in the Computer Science curriculum for ABCU. Each line will consist of the information about a single course, including the course number, title, and prerequisites. The Course Information document includes the course data and a diagram of how the program will execute. Your pseudocode will need to validate the sample file to ensure it is formatted correctly and check for the following:

Ensure there are at least two parameters on each line (some courses may not have any prerequisites).

Ensure any prerequisite that is provided on a line exists as a course in the file. In other words, any prerequisite at the end of a line must have another line in the file that starts with that courseNumber.

Design pseudocode to show how to create course objects and store them in the appropriate data structure. Your pseudocode should show how to create course objects so that one course object holds data from a single line from the input file. Knowing the file format will help you parse and store each token of data into the appropriate course object instance variable. You should store each course object into the vector data structure. Once the entire file has been processed, the vector data structure will have multiple course objects, one per line in the file. Hint: A loop will be needed to process all lines from the file.

Design pseudocode that will search the data structure for a specific course and print out course information and prerequisites. The advisors from ABCU want to be able to print out the course information and prerequisites from the data stored in the data structure for a given course. In the Pseudocode Document, linked in the Supporting Materials, pseudocode for printing course information using a vector data structure is provided as an example.

PROVIDED DOCUMENT 1\2

Function Signatures

Below are the function signatures that you can fill in to address each of the three program requirements using each of the data structures. The pseudocode for printing course information, if a vector is the data structure, is also given to you below (depicted in bold).

// Vector pseudocode

int numPrerequisiteCourses(Vector courses, Course c) {

totalPrerequisites = prerequisites of course c

for each prerequisite p in totalPrerequisites

add prerequisites of p to totalPrerequisites

print number of totalPrerequisites

}

void printSampleSchedule(Vector courses) {

}

void printCourseInformation(Vector courses, String courseNumber) {

for all courses

if the course is the same as courseNumber

print out the course information

for each prerequisite of the course

print the prerequisite course information

}

// Hashtable pseudocode

int numPrerequisiteCourses(Hashtable courses) {

}

void printSampleSchedule(Hashtable courses) {

}

void printCourseInformation(Hashtable courses, String courseNumber) {

}

// Tree pseudocode

int numPrerequisiteCourses(Tree courses) {

}

void printSampleSchedule(Tree courses) {

}

void printCourseInformation(Tree courses, String courseNumber) {

}

Example Runtime Analysis

When you are ready to begin analyzing the runtime for the data structures that you have created pseudocode for, use the chart below to support your work. This example is for printing course information when using the vector data structure. As a reminder, this is the same pairing that was bolded in the pseudocode from the first part of this document.

Code

Line Cost

# Times Executes

Total Cost

for all courses

1

n

n

if the course is the same as courseNumber

1

n

n

print out the course information

1

1

1

for each prerequisite of the course

1

n

n

print the prerequisite course information

1

n

n

Total Cost

4n + 1

Runtime

O(n)

PROVIDED DOCUMENT 2\2

image text in transcribed

Course List This document outlines all of the courses that the advising team will need you to include in the program you are developing. Once you start coding, the same information will be provided to you in a text file that can be used as an input for your program. For now, you only need to understand all of the course data inputs and will reference them while you create your pseudocode. Note that the course data is composed of comma-separated values and contains the fields courseNumber, name, prerequisite1, prerequisite2,...,prerequisiteN. While the courseNumber and name will be shown on every line, a course may have 0,1 , or more prerequisites. A prerequisite will be listed using only its courseNumber. The course data is as follows: CSCI100, Introduction to Computer Science CSCI101, Introduction to Programming in C++, CSCI100 CSCI200, Data Structures, CSCI101 MATH201, Discrete Mathematics CSCI300, Introduction to Algorithms, CSCI200, MATH201 CSCI301, Advanced Programming in C++, CSCI101 CSCI350, Operating Systems, CSCI 300 CSCI400, Large Software Development, CSCI301, CSCI350

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Current Trends In Database Technology Edbt 2006 Edbt 2006 Workshops Phd Datax Iidb Iiha Icsnw Qlqp Pim Parma And Reactivity On The Web Munich Germany March 2006 Revised Selected Papers Lncs 4254

Authors: Torsten Grust ,Hagen Hopfner ,Arantza Illarramendi ,Stefan Jablonski ,Marco Mesiti ,Sascha Muller ,Paula-Lavinia Patranjan ,Kai-Uwe Sattler ,Myra Spiliopoulou ,Jef Wijsen

2006th Edition

3540467882, 978-3540467885

More Books

Students also viewed these Databases questions