Computer programming

profileJokesuzan
Syllabus_CST-105-O500-20231211.pdf

Dec 12, 2023, 2:07 PM

Computer Programming I

CST-105 4 Credits Dec 11, 2023 - Feb 11, 2024

Course Description

This course introduces the fundamental concepts and syntax of the Java programming language. The course focuses on object-oriented techniques in Java with an emphasis on problem solving and fundamental algorithms.

Instructor Contact Information

Dennis Attawia [email protected]

Dr. Melody White [email protected]

Class Resources

CST-105 zyBooks

Lysecky, R., & Lizarraga, A. (2021). Computer programming 1 (Custom). Zyante, Inc. ISBN: 9781394093632. (Available as a custom eBook.) 

Note: Students must create a zyBooks account, then sign in to access the custom zyBooks.

Eclipse IDE for Java Developers

This course requires the use of Eclipse IDE for Java Developers.

Access to and additional information for resources may be found on the Course Materials Support page in the Student Success Center.

Be sure to download or update to the version specified by your instructor.

https://www.gcumedia.com/digital-resources/the-eclipse-foundation/2016/eclipse-ide-for-java- developer_1e.php

Page 1 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

CST-105 Tools Installation for Java IDE

Refer to the "Tools Installation for Java IDE" guide to install the Eclipse IDE. This is required prior to completing Exercise 1.

Video Playlist: Computer Programming I

This video provides a demonstration of Eclipse for Java.

https://ssc.gcu.edu/#/media-element/ac8620aa-76f6-ed11-9162-005056bd41ef

Laptop

This course requires students to have a laptop. Students will use their laptop to complete the course assignments. Technical specifications can be found in the University Policy Handbook.

Topic 1: Primitives, I/O, Standard Coding Practices

This topic provides the foundation needed to begin writing programs and solving problems. The basics of the Java programming language are introduced and students gain their first experience designing a solution and writing a Java program. The topic also introduces the ACM Code of Ethics and Professional Conduct.

Objectives:

Create a flowchart to model a procedural algorithm.1. Explain how the ACM Code of Ethics and Professional Conduct guides behavior.2. Utilize arithmetic operators in a Java program.3. Use standard input and output operations in a programming solution.4. Interpret code containing primitive variables and input/output operations.5. Demonstrate professional responsibilities and make informed judgements in computing practice based on 6. legal and ethical principles.

Dec 11, 2023 - Dec 17, 2023 Max Points: 235

Resources

Java – Variable Types

Read "Java – Variables Types," from Tutorials Point.

http://www.tutorialspoint.com/java/java_variable_types.htm

Page 2 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

CST-105 zyBooks

Read Chapters 1 and 2 in Computer Programming I and complete all participation exercises.

Java - Basic Syntax

Read "Java – Basic Syntax," from Tutorials Point.

http://www.tutorialspoint.com/java/java_basic_syntax.htm

Java – Packages

Read "Java – Packages," from Tutorials Point.

http://www.tutorialspoint.com/java/java_packages.htm

Java – Basic Datatypes

Read "Java – Basic Datatypes," from Tutorials Point.

http://www.tutorialspoint.com/java/java_basic_datatypes.htm

Video Playlist: Computer Programming I

This video provides a demonstration of Eclipse for Java.

https://ssc.gcu.edu/#/media-element/ac8620aa-76f6-ed11-9162-005056bd41ef

Java - Documentation Comments

Read "Java – Documentation Comments," from Tutorials Point.

http://www.tutorialspoint.com/java/java_documentation.htm

ACM Code of Ethics and Professional Conduct

Read "ACM Code of Ethics and Professional Conduct," from the Association for Computing Machinery (2018). This resource will also be utilized for the "Ethical Practice Paper," due in this topic.

https://www.acm.org/code-of-ethics

Page 3 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Assessments

Summary of Current Course Content Knowledge Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 11, 2023, 11:59 PM 0

Assessment Description

Academic engagement through active participation in instructional activities related to the course objectives is paramount to your success in this course and future courses.  Through interaction with your instructor and classmates, you will explore the course material and be provided with the best opportunity for objective and competency mastery.  To begin this class, review the course objectives for each Topic, and then answer the following questions as this will help guide your instructor for course instruction. 

 

Which weekly objectives do you have prior knowledge of and to what extent?1. Which weekly objectives do you have no prior knowledge of?2. What course-related topics would you like to discuss with your instructor and classmates?  What questions 3. or concerns do you have about this course? 

Class Introductions Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 13, 2023, 11:59 PM 0

Assessment Description Take a moment to explore your new classroom and introduce yourself to your fellow classmates. What are you excited about learning? What do you think will be most challenging?

Topic 1 DQ 1 Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 13, 2023, 11:59 PM 5

Assessment Description

For this activity, you will need to install Eclipse for Java. Refer to the instructions in the "Video Playlist: Computer Programming I," located in the topic Resources, to complete the installation. Refer to the "Topic 1 DQ 1" document for complete assignment instructions.

Topic 1 DQ 2

Page 4 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 15, 2023, 11:59 PM 5

Assessment Description

Complete zyBooks 2.34 Lab: Convert to dollars. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 1 Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 17, 2023, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Document a simple algorithmic process. Get data from the keyboard. Utilize Java arithmetic operators. Output result data in a specified format. Select appropriate variable types for a calculation. Demonstrate and explain your work.

Write the following program: 

Write a program that prompts the user to enter a 5-digit positive integer. Using only the / and % operations, 1. compute each individual digit and display the sum of the digits. Here is a sample run with the user input underlined. Enter a 5-digit positive integer: 30458 The sum of the digits is 3 + 0 + 4 + 5 + 8 = 20 Test your results for each program carefully. Your programs should compute the correct result for a variety 2. of inputs, not just the ones shown here. Design a flowchart, or pseudocode, to model a procedural algorithm for the following program: A program 3. that prompts the user to enter a temperature in degrees Fahrenheit. Convert the temperature to degrees Celsius. Then, prompt the user to enter a temperature in Celsius. Convert the temperature to degrees Fahrenheit. The formulas needed are C = (F – 32) * 5/9 and F = 9/5*C + 32.Here is a sample run of the program with user input underlined.Enter a Fahrenheit temperature:  100100 ºF is equivalent to 37.777… ºCEnter a Celsius temperature:  100100 ºC is equivalent to 212 ºF Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 1. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Use Loom to upload your completed video and ensure that your instructor can access and view your private, linked video prior to submitting it to the digital classroom.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file) All your project code and test files The link to your video

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

Page 5 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Exercise 2 Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 17, 2023, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Document a simple algorithmic process. Get data from the keyboard. Utilize Java arithmetic operators. Output result data in a specified format. Select appropriate variable types for a calculation. Demonstrate and explain your work.

Write a Java program that implements the temperature conversions flowchart, or pseudocode, from Exercise 1 and utilizes operators. Use the logic in your flowchart as a guide.

Test your results for each program carefully. Your programs should compute the correct result for a variety 1. of inputs, not just the ones shown in Exercise 1. Design a flowchart, or pseudocode, for the following program: This program is a "guessing game" program. 1. The program will generate a random integer between 1 and 10000, inclusive. The program should prompt the user to enter a guess. For each guess, the program will output 'HIGHER' if the user's guess is lower than the target, 'LOWER' if the user's guess is higher than the target, or 'WINNER' if the user guesses the target. Each time the program prompts the user for a new guess, it should calculate and display the eligible range of values. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 1. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Use Loom to upload your completed video and ensure that your instructor can access and view your private, linked video prior to submitting it to the digital classroom.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file) All your project code and test files The link to your video

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Page 6 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Topic 1 Assessment Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 17, 2023, 11:59 PM 50

Assessment Traits

Timed

Assessment Description

This assessment will assess the student's ability to interpret code containing primitive variables and input/ output operations, as well as use appropriate primitive variable types as part of a programming solution. 

Complete the Topic 1 Assessment in the digital classroom as directed by the instructor.

Week 1 Participation Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 17, 2023, 11:59 PM 20

Ethical Practice Paper Start Date & Time Due Date & Time Points

Dec 11, 2023, 12:00 AM Dec 24, 2023, 11:59 PM 45

Assessment Description

The following exercise assesses your ability to:

Demonstrate professional responsibilities and make informed judgements in computing practice based on legal and ethical principles.

Read the "ACM Code of Ethics and Professional Conduct," located in the topic Resources.

Write a 750- to 1,000-word essay in which you explain how the ACM Code might guide the behavior of an undergraduate computing student. How might the code shape your personal actions? Explain how you would demonstrate professional responsibilities and make informed judgements in computing practice based on legal and ethical principles. In your paper, be sure to cite the particular articles in the ACM Code. For example: In group assignments, it is important for all individuals in the group to be transparent about their contributions to the project because this increases the quality of the overall work process. (Principle 2.1)

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion. 

You are not required to submit this assignment to LopesWrite. 

Page 7 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

This assignment introduces the following competency: Demonstrate professional responsibilities and make informed judgements in computing practice based on legal and ethical principles. (ABET 4)

Topic 2: File I/O and Control Structures

This topic introduces control structures, allowing students to create solutions that require logical decision- making. Students learn to write logical expressions using relational and logical operators, create selection and repetition structures, and design more complex algorithms by nesting and stacking control structures. Students also learn basic file input and output operations.

Objectives:

Write a Java program that implements the guessing game flowchart or pseudocode.1. Design a flowchart for a program that tabulates contributions collected by an organization.2. Write a Java program that implements the contributions collection flowchart or pseudocode.3. Design a flowchart or pseudocode for a program.4. Interpret expressions using relational and logical operators.5. Interpret code containing control structures and logical expressions.6. Identify, formulate, and solve complex software engineering problems by applying principles of 7. mathematics, science, and engineering.

Dec 18, 2023 - Dec 24, 2023 Max Points: 190

Resources

Java – Decision Making

Read "Java – Decision Making," from Tutorials Point.

http://www.tutorialspoint.com/java/java_decision_making.htm

CST-105 zyBooks

Read the "Control Structures" section of Chapter 3 in Computer Programming I and complete all participation activities.

Assessments

Topic 2 DQ 1 Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 20, 2023, 11:59 PM 5

Page 8 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Assessment Description

Complete zyBooks 3.30 Lab: Interstate highway numbers. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Topic 2 DQ 2 Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 22, 2023, 11:59 PM 5

Assessment Description

Complete zyBooks 3.33 Lab: Varied amount of input data. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 3 Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 24, 2023, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Design a logical solution using control structures. Use relational and logical operators in a programming solution. Use selection structures in a programming solution. Use repetition structures in a programming solution.

Review the rubric for this assignment before beginning work. Be sure you are familiar with the criteria for 1. successful completion. The rubric link can be found in the digital classroom under the assignment. Write a Java program that implements the guessing game flowchart, or pseudocode, from Exercise 2. Use 2. the logic in your flowchart as a guide. Sample output: Please enter a number between 1 and 10000: 5000Your guess is to high, try again.Please enter a number between 1 and 5000: 2500Your guess is to high, try again.Please enter a number between 1 and 2500: 1500Your guess is to low, try again.Please enter a number between 1500 and 2500: 2000Your guess is to high, try again.Please enter a number between 1500 and 2000: 1600Your guess is to low, try again.  Design a flowchart for a program that tabulates contributions collected by an organization. The organization 1. wishes to accept contributions until a total of $10,000,000 is met. Once this total is hit, no further contributions should be accepted. The organization wants the program to read data from an input file (input.in). The following data should be written to a file called results.out: - The total number of contributions needed to meet the goal of 10 million dollars.- The amount of the largest and smallest contribution accepted.- The average contribution size. Consider both the scenario where the input file does not contain enough contributions to meet the goal and 2. the scenario where the input file contains more data than needed. The output file should match the formatting shown in the example. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 3. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Your video should not exceed 5 minutes.

Page 9 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file). All your project code and test files. A Loom video link; ensure that this video is private so only your instructor can see the video.

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Exercise 4 Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 24, 2023, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Design a logical solution using control structures. Utilize repetition structures in a programming solution. Use file input and output operations in a programming solution.

Write a Java program that implements the contributions collection flowchart, or pseudocode, from Exercise 3. The organization wishes to accept contributions until a total of $10,000,000 is met. Once this total is hit, no further contributions should be accepted. The organization wants the program to read data from an input file (input.in). The following data should be written to a file called results.out:

The total number of contributions needed to meet the goal of 10 million dollars. The amount of the largest and smallest contribution accepted. The average contribution size.

Consider both the scenario where the input file does not contain enough contributions to meet the goal and 1. the scenario where the input file contains more data than needed. The output file should match the formatting shown in the example. It took 2007 contribution to reach the goal.The maximum contribution received was $53,246.00.The minimum contribution received was $7.00.The average contribution amount was $4,982.58.A total of $10,000,034.00 was collected. Test your program with a variety of input data. It is helpful to set a smaller contribution goal when testing 1. your program. Consider both the scenario where the input file does not contain enough contributions to meet the goal and the scenario where the input file contains more data than needed. Identify and validate calculations for all data sets that may total less than or greater than the $10,000,000 requirement. Design a flowchart, or pseudocode, for the following program: For each word in the file, output the original 2. word and its encrypted equivalent in all-caps. The output should be in a tabular format, as shown below. The output should be written to a file called results.out. Here are the rules for our encryption algorithm: - If a word has n letters, where n is an even number, move the first n/2 letters to the end of the word. For example, ‘before’ becomes ‘orebef’ - If a word has n letters, where n is an odd number, move the first (n+1)/2 letters to the end of the word. For example: ‘kitchen’ becomes ‘henkitc’Here is a sample run of the program for the following input file. Your program should work with any file, not just the sample shown here.

Page 10 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Life is either a daring adventure or nothing at all

Program output

Life            feLi

is                si

either         hereit

a                a

daring        ingdar

adventure   tureadven

or               ro

nothing       ingnoth

at               ta

all              lal

  Write the output to a file.

Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 1. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file). All your project code and test files. A Loom video link; ensure that this video is private so only your instructor can see the video.

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

This assignment introduces the following competency: Identify, formulate, and solve complex software engineering problems by applying principles of mathematics, science, and engineering. (ABET1)[ABET EAC 1]

Topic 2 Assessment Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 24, 2023, 11:59 PM 50

Page 11 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Assessment Traits

Timed

Assessment Description

This assessment will assess the student's ability to interpret code containing control structures and logical expressions, as well as interpret expressions using relational and logical operators.

Complete the Topic 2 Assessment in the digital classroom as directed by the instructor.

Week 2 Participation Start Date & Time Due Date & Time Points

Dec 18, 2023, 12:00 AM Dec 24, 2023, 11:59 PM 20

Topic 3: Strings, Arrays, and Lists

This topic introduces the Java string class and the array data structure. Upon successful completion of this topic, students will be able to create and manipulate strings and arrays of primitive data as part of a computational solution. Students will also learn to search arrays and create and manage 2-dimensional arrays to model tables and grids.

Objectives:

Use and manipulate String objects in a programming solution.1. Write a Java program that implements the encryption flowchart or pseudocode.2. Write a Java program that implements the 2D array.3. Interpret code containing Strings, arrays, and lists.4.

Jan 8, 2024 - Jan 21, 2024 Max Points: 220

Resources

CST-105 zyBooks

Read the "Strings, Arrays, and Lists" section of Chapter 4 in Computer Programming I and complete all participation activities.

Java – Numbers Class

Read "Java – Numbers Class," from Tutorials Point.

http://www.tutorialspoint.com/java/java_numbers.htm

Page 12 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Java – Strings Class

Read "Java – Strings Class," from Tutorials Point.

http://www.tutorialspoint.com/java/java_strings.htm

Java Formatter Method

Read "Java.util.Formatter.format() Method," from Tutorials Point.

http://www.tutorialspoint.com/java/util/formatter_format.htm

Assessments

Topic 3 DQ 1 Start Date & Time Due Date & Time Points

Jan 8, 2024, 12:00 AM Jan 10, 2024, 11:59 PM 5

Assessment Description

Assume that "a" is an array of integers. What, if anything, is wrong with this Java statement:a[a.length] = 10;

Topic 3 DQ 2 Start Date & Time Due Date & Time Points

Jan 8, 2024, 12:00 AM Jan 12, 2024, 11:59 PM 5

Assessment Description

Complete zyBooks Challenge Activity 4.11.2: Copy and modify array elements. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 5 Start Date & Time Due Date & Time Points

Jan 8, 2024, 12:00 AM Jan 14, 2024, 11:59 PM 55

Assessment Description

Page 13 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

The following exercise assesses your ability to do the following:

Use and manipulate String objects in a programming solution.

Write a Java program that implements the encryption flowchart, or pseudocode, from Exercise 4. Use the logic in your flowchart as a guide. Write a program that reads text from a file. For each word in the file, output the original word and its encrypted equivalent in all-caps. Here is a sample run of the program for the following input file. Your program should work with any file, not just the sample shown here.

Life is either a daring adventure or nothing at all

Program output

Life            feLi

is                si

either         hereit

a                a

daring        ingdar

adventure   tureadven

or               ro

nothing       ingnoth

at               ta

all              lal

Design a flowchart, or pseudocode, for the following program: Write a program that reads text from a file. 1. Create a 2-dimensional character array that is rows * columns. Fill the array as follows:- On even numbered rows, fill the row from the leftmost column to the rightmost.- On odd numbered rows, fill the row from the rightmost column to the leftmost.- Fill any unused spaces in the 2D array with the ‘*’ character. If you have more characters than space, ignore the excess characters. Extract the characters from your array in column-major order (pull from column 0 first, then column 1, etc.). 1. Build a new string as you extract the characters. Display the new string. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 2. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Your video should not exceed 5 minutes.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file). All your project code and test files. A Loom video link; ensure that this video is private so only your instructor can see the video.

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar

Page 14 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Week 3 Participation Start Date & Time Due Date & Time Points

Jan 8, 2024, 12:00 AM Jan 14, 2024, 11:59 PM 20

Topic 3 DQ 3 Start Date & Time Due Date & Time Points

Jan 15, 2024, 12:00 AM Jan 17, 2024, 11:59 PM 5

Assessment Description

Complete zyBooks Challenge Activity 4.15.2: Modifying ArrayList using add() and remove(). Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Topic 3 DQ 4 Start Date & Time Due Date & Time Points

Jan 15, 2024, 12:00 AM Jan 19, 2024, 11:59 PM 5

Assessment Description

Complete zyBooks 4.22 LAB: Output numbers in reverse. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 6 Start Date & Time Due Date & Time Points

Jan 15, 2024, 12:00 AM Jan 21, 2024, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Use and manipulate string objects in a programming solution. Process arrays using loops. Utilize arrays to manage collections of data. Model tables and grids using 2-dimensional arrays.

Write a Java program that implements the 2D array from Exercise 5. Use the logic in your flowchart, or Page 15 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

pseudocode, as a guide the input file should be called input.in.

Here is an example for a 4 * 8 grid and the input string.

And the rest is rust and stardust

      0     1     2     3     4     5     6     7

0     A    n     d             t     h     e    

1           s      i             t     s     e      r

2     r     u     s     t             a     n     d

3     s     u     d     r      a     t     s Output string: 

A rsnsuudisd  trtt ahsateens rd Your program should work for any input file and any size grid.

Make sure your program only outputs the encrypted string. Check your solution to ensure that the 1. output string is correct. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 2. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Your video should not exceed 5 minutes.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your flowchart, or pseudocode (.png file). All your project code and test files. A Loom video link; ensure that this video is private so only your instructor can see the video.

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Topic 3 Assessment Start Date & Time Due Date & Time Points

Jan 15, 2024, 12:00 AM Jan 21, 2024, 11:59 PM 50

Assessment Traits

Timed

Assessment Description

This assessment will assess the student's ability to interpret code containing strings, arrays, and lists.

Complete the Topic 3 Assessment in the digital classroom as directed by the instructor.

Page 16 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Week 4 Participation Start Date & Time Due Date & Time Points

Jan 15, 2024, 12:00 AM Jan 21, 2024, 11:59 PM 20

Topic 4: Methods and Abstraction

In this topic, students will learn to develop solutions to complex problems by deconstructing the initial problem into smaller, more manageable tasks. Upon successful completion of this topic, students will be able to define a method using Java syntax, distinguish between void and value-returning methods, pass data to methods, and invoke methods.

Objectives:

Create two objects that interact with each other.1. Write a main program that allows user input to tell the number of cards to deal from the deck.2. Interpret code containing methods.3.

Jan 22, 2024 - Jan 28, 2024 Max Points: 135

Resources

Java – Methods

Read "Java – Methods," from Tutorials Point.

http://www.tutorialspoint.com/java/java_methods.htm

CST-105 zyBooks

 Read the "Methods and Abstraction" section of Chapter 5 in Computer Programming I and complete all participation activities.

Assessments

Topic 4 DQ 1 Start Date & Time Due Date & Time Points

Jan 22, 2024, 12:00 AM Jan 24, 2024, 11:59 PM 5

Page 17 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Assessment Description

Complete Challenge Activity 5.8.2: Modify an array parameter. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Topic 4 DQ 2 Start Date & Time Due Date & Time Points

Jan 22, 2024, 12:00 AM Jan 26, 2024, 11:59 PM 5

Assessment Description

Complete zyBooks 5.27 Lab: Word frequencies – methods. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 7 Start Date & Time Due Date & Time Points

Jan 22, 2024, 12:00 AM Jan 28, 2024, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Create two objects with a containment relationship. Call methods of an object from a different object. Create a UML object model of the objects and their relationship.

Create a UML object model of a card and deck that can be used in a basic card game. Since both of the objects exists in the real world, use this real-world model to create the attributes and behaviors needed for a card and deck. When looking at a single card, from a deck of cards, it has only two attributes; a suit and a value. So, the card object will have these two attributes as well. There will have to be behaviors to get these attribute values as well. The card will include special named cards of ace, jack, queen, and king as well. The deck will have an array of cards as its attribute and there also must be a way to point to the top of the deck for dealing the next card. The deck will need to create all the cards, shuffle the cards, and deal the next card from the deck.

Using the UML object model, write the code to implement the model. During this process, there may be 1. changes to the object model, so do not forget to update the object model to reflect these changes. Write a main program that will allow user input to tell the number of cards to deal from the deck. Then the 1. program will deal that specific number of cards from the dec,k displaying the cards in a format to reflect what the card is. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 1. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Use Loom to upload your completed video and ensure that your instructor can access and view your private, linked video prior to submitting it to the digital classroom.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your UML (.png file) All your project code and test files

Page 18 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

The link to your video

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Topic 4 Assessment Start Date & Time Due Date & Time Points

Jan 22, 2024, 12:00 AM Jan 28, 2024, 11:59 PM 50

Assessment Traits

Timed

Assessment Description

This assessment will assess the student's ability to interpret code containing methods.

Complete the Topic 4 Assessment in the digital classroom as directed by the instructor.

Week 5 Participation Start Date & Time Due Date & Time Points

Jan 22, 2024, 12:00 AM Jan 28, 2024, 11:59 PM 20

Topic 5: Objects and Classes

This topic introduces object-oriented design and the principles of encapsulation and data hiding. Upon successful completion of this topic, students will be able to create a model of an object using unified modeling language (UML) and build a class that implements the object. Students will also be able to use instances of class objects as part of a solution.

Objectives:

Define a model of an object using abstraction and UML.1. Create an object that interacts with existing objects.2. Test the effectiveness of the system data.3. Interpret code containing classes and objects.4. Write a main program that will prompt the user for the number of players and the names.5.

Jan 29, 2024 - Feb 11, 2024 Max Points: 220 Page 19 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Resources

Java – Interfaces

Read "Java – Interfaces," from Tutorials Point.

http://www.tutorialspoint.com/java/java_interfaces.htm

Java – Encapsulation

Read "Java – Encapsulation," from Tutorials Point.

http://www.tutorialspoint.com/java/java_encapsulation.htm

CST-105 zyBooks

Read the "Objects and Classes" section of Chapter 6 in Computer Programming I and complete all participation activities.

Java - Object and Classes

Read "Java – Object and Classes," from Tutorials Point.

http://www.tutorialspoint.com/java/java_object_classes.htm

Assessments

Topic 5 DQ 1 Start Date & Time Due Date & Time Points

Jan 29, 2024, 12:00 AM Jan 31, 2024, 11:59 PM 5

Assessment Description

Complete Challenge Activities 6.3.1: Classes and 6.3.2: Basic class use. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Topic 5 DQ 2 Start Date & Time Due Date & Time Points

Page 20 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Jan 29, 2024, 12:00 AM Feb 2, 2024, 11:59 PM 5

Assessment Description

Complete Challenge Activity 6.9.2: Unit testing of a class. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Exercise 8 Start Date & Time Due Date & Time Points

Jan 29, 2024, 12:00 AM Feb 4, 2024, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Add an enhancement to an existing project. Update UML model to reflect changes to project. Add new object(s) to project.

Starting with the UML object model from Exercise 7 add a Hand object to the model. The Hand object will hold the cards that will be dealt from the deck. Since a hand exists in the real world, use this real-world model to create the attributes and behaviors needed for a hand for a card game. Remember that the hand should be able to give the total value of the cards in the hand.

When calculating the hand total: jack, queen, and king are always a value of 10. If there is a single ace, it has a value of 11 if the hand total is less than 21, otherwise, it has a value of 1. All other cards have a value of the card.

Write a main program that will allow user input to tell the number of cards to deal from the deck. Then the 1. program will deal that many cards from the deck into the hand. Retrieving the cards from the hand, display each card in a format to reflect what the card is, then display the hand total. Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 1. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Use Loom to upload your completed video and ensure that your instructor can access and view your private, linked video prior to submitting it to the digital classroom.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your UML (.png file) All your project code and test files The link to your video

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Page 21 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

Week 6 Participation Start Date & Time Due Date & Time Points

Jan 29, 2024, 12:00 AM Feb 4, 2024, 11:59 PM 20

Topic 5 DQ 3 Start Date & Time Due Date & Time Points

Feb 5, 2024, 12:00 AM Feb 7, 2024, 11:59 PM 5

Assessment Description

Complete zyBooks 6.24 Lab: Artwork label. Post a screenshot of your successful submitted test cases as part of your response. Comment on any challenges you experienced and the skills learned.

Topic 5 DQ 4 Start Date & Time Due Date & Time Points

Feb 5, 2024, 12:00 AM Feb 9, 2024, 11:59 PM 5

Assessment Description

You have been asked to design a villain for a video game. Design a villain class UML. Post a screenshot of your UML drawing.

Exercise 9 Start Date & Time Due Date & Time Points

Feb 5, 2024, 12:00 AM Feb 11, 2024, 11:59 PM 55

Assessment Description

The following exercise assesses your ability to do the following:

Add an enhancement to an existing project. Update UML model to reflect changes to project. Add new object(s) to project.

Starting with the UML object model from Exercise 8, add a player and a dealer object to the model. The player object will represent each player in the game. A player will need to be able to add cards to its hand, get the hand total, and have a name. The dealer object represents the dealer, which will control the overall game play. The dealer will handle the deck, manage players, contain its own hand, do the start deal, and determine winning players hands.

Write a main program that will prompt the user for the number of players (there can be up to six players in 1. the game), get the name of each player, display all the hands (remember that the second card of the dealer

Page 22 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM

is not displayed until the hand is over), ask each player to hit until they stop asking for hits, do the dealer hit (dealer must hit if hand total is less than 17), show all hands and who wins (players with higher total and dealer). Create a 3- to 5-minute video in which you explain your variable choices and any calculations in your 2. programs. Execute (run) the program in your video. Address any challenges encountered and new information learned while completing the assignment. Do not include the flowchart as part of the video. Use Loom to upload your completed video and ensure that your instructor can access and view your private, linked video prior submitting it to the digital classroom.

Submit the following in the digital classroom as a single zip file, as directed by your instructor:

Your UML (.png file) All your project code and test files The link to your video

While APA style is not required for the body of this assignment, solid academic writing is expected, and documentation of sources should be presented using APA formatting guidelines, which can be found in the APA Style Guide, located in the Student Success Center.

This assignment uses a rubric. Please review the rubric prior to beginning the assignment to become familiar with the expectations for successful completion.

You are not required to submit this assignment to LopesWrite.

Topic 5 Assessment Start Date & Time Due Date & Time Points

Feb 5, 2024, 12:00 AM Feb 11, 2024, 11:59 PM 50

Assessment Traits

Timed

Assessment Description

This assessment will assess the student's ability to interpret code containing classes and objects, as well as define a model of an object using abstraction and UML.

Complete the Topic 5 Assessment in the digital classroom as directed by the instructor.

Week 7 Participation Start Date & Time Due Date & Time Points

Feb 5, 2024, 12:00 AM Feb 11, 2024, 11:59 PM 20

Page 23 Grand Canyon University 2023 © Prepared on: Dec 12, 2023, 2:07 PM