Carter's Castle
Carter's Online Class with PDD Demos and Real Code Demos

Carter's Castle Programming

Objectives: I will be using this site to help with demonstrations for my programming classes as well as any illustrations I am using for Programer Tutoring. Since most of what I teach is related to Program Design and Development plus Intro to C++ that is where I will start. Then my plans will be to include demonstrations using JAVA with maybe some Visual Basic after all this is up and running. In the end I would like to include some PHP. Hope this will help you in your studies of programming and set you on path to much success.

Topic Areas To Cover

Each item has a menu pick across the top as tab navigators. These topics will be covered by hitting highlights I have found important and then covering programming assignment demos that get into the details of that particular coding technique. I truely believe that if you practice and grow with your efforts you can master the programming skill. Some people can tell right off if they like programming. Some people need a little more time using tools and techniques to help work them into a focused coder. If you benefit from this site or see inprovements you could recommend feel free to email me at objectcoach@aol.com. In the beginning there will be areas that have (UNDER CONSTRUCTION / FUTURE CONTENT YET TO COME). One of my goals will be to have this site complete by the end 2018.

If you are just starting to use Carter's Castle Site please go to the last page (on the menu bar labeled Survey) and complete the survey. The intent is to determine where a participant is coming from. Are you a student? Have you programmed? and other such questions. Make sure you click check answers and then do the email score. Remember, this is not a test score it is only for survey information.

 

  

MOD1 - Welcome Message

MOD1 - Objectives

Brief Video Intro

 

Content Items We Will Explore

A Quick Raptor Demo

Five Steps To Design

Writing Modular Programs

If Statements (Decision Structures)

Loops (Repetition Structures)

Files

Arrays

 

If you can master the above list of programming skills then you should be able to make a living as a programmer.   Why don't you give it a try, then email me on how things turned out. My general email account is objectcoach@aol.com.

Who am I?

Where does the Castle come from?

When did I start using a computer?

The textbook you might be using

Preparing for your first computer program

What you can expect from this training site?

Print Chart

IPO Chart

Hierarchy Chart

Pseudo Code

Flowchart

Check How Ready You Are

Use the next link and take a look at the Flash Cards, The Matching, Crossword Puzzle or the Quiz to see how ready you are. If you do really well you might skip the introductory chapter.

Link: Chapter 1 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 1 Quiz

Feedback for Welcome Message

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic across the top called (Survey). Complete the survey quiz and then send the email request. Thank you for your help.

MOD2 - A Quick Raptor/Flowgorithm Demo

MOD2 - Objectives

Raptor Install/Overview 

Problem Demonstration

Starting Out With C++, Tony Gaddis, Chapter 2 - Ocean Levels

Objectives: As a beginning program to write I pulled this problem out of the C++ book but it can easily be used as a program for our Flow Charting class. See if you can look this one over and write your own solution. I will add my suggestions below.

Assuming the ocean's level is currently rising at about 1.5 millimeters per year, write a program  that display

If this is your first problem to attempt you might want to review the solution videos first and then make your attempt after you have an idea about the requirements. The end result should be you having a Raptor solution that runs just like the demo.

A Sample Solution for Ocean Levels - Using Raptor

Part I - Analyze The Project

Part II - Output Design

 

Part III - IPO Chart & Flowchart using Raptor

 

Solution using Flowgorithm

Part IV - Demo using Flowgorithm

(underconstructions: add video here when ready)

No quiz for this section.

Solutions Demonstrated with Real Code

 

Real C++ Code - Ocean Levels

Real JAVA Code - Ocean Levels

Feedback for MOD2

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

MOD3 - Designing A Program

MOD3 - Objectives

Check How Ready You Are

This section is usually from a Chapter 2 textbook content section. Take a look at the study helps and quiz to see if you need to spend some time here. If you are not an experienced programmer you may find some items you should spend extra time studying. Once you feel you have mastered this section you should be ready for our next topic of Modules. Modular programming is one of my favorite topics. 

Link: Chapter 2 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 2 Quiz

 

Two Steps To Design

1) Understand the program

2) Determine steps to perform the task

 

Tools for Design

Print Chart (Output Specs)

Program Analysis W/S (IPO Chart)

 

Flowchart (Raptor)

Pseudocode

Solutions Demonstrated with Real Code

C++ - DisplayAge

JAVA - DisplayAge

Feedback for MOD3

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

MOD4 - Writing Modular Programs

Check How Ready You Are

This section is usually from a Chapter 3 textbook content section. Take a look at the study helps and quiz to see if you need to spend some time here. If you are not an experienced programmer trained in a formal classroom setting you may find some items you should spend extra time studying. Once you feel you have mastered this section you should be ready for our topic of Modular Programs. Setting up good modular programs can be one of my favorite parts in program development. This is a great reason to use a tool like Raptor. 

Link: Chapter 3 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 3 Quiz

Building Modular Programs

(after watching the intro video you might want to scroll to the bottom of this page to watch an example of program modules)

Why would people build programs that do not use modules?

What happens when people start writing programs after they have design training?

What might encourage the use of modules?

 

What is a modular program?

A modular program is a program that was developed grouping statements that perform similar (specific) tasks together. Each module in a program can contain a few lines of code or may include several lines of code depending on how broad you define the operation being performed.

What are four levels of modules we might tend to use?

1) A simple procedure (might be called a subchart).

  1. Has a name to be called.
  2. Must be called to activate.
  3. Receives no values.
  4. Returns no values.
  5. Designed to only group instructions.
  6. Usually relies on global variables to work with values between module calls.
  7. This is not a data safe module.
  8. This is not a code safe module.

2) A formal procedure.

  1. Has a name to be called.
  2. Must be called to activate.
  3. Can receive multiple values.
  4. Can return multiple values.
  5. Designed to group instructions and share data.
  6. Usually does not rely on global variables to work with values between module calls. The desire is to pass all values from and to the module.
  7. This is a data safe module.
  8. This is not a code safe module.

3) A function.

  1. Has a name to be called.
  2. Must be called to activate.
  3. Can receive multiple values.
  4. Designed to return only one value.
  5. Designed to group instructions and share data.
  6. Usually does not rely on global variables to work with values between module calls. The desire is to pass all values needed to the module and return only one value.
  7. The function call can be embedded in a mathematical formula.
  8. This is a data safe module.
  9. This is not a code safe module.

4) A method.

  1. First a method must be part of an OBJECT.
  2. Has a name to be called.
  3. Must be called to activate.
  4. Can receive multiple values.
  5. Designed to return only one value.
  6. Designed to group instructions and share data.
  7. Usually does not rely on global variables to work with values between module calls. The desire is to pass all values needed to the module and return only one value.
  8. The method call can be embedded in a mathematical formula.
  9. This is a data safe module.
  10. This is a code safe module.

Raptor allows what module types?

 

Now let's get into a few Raptor Examples

1) Demo Raptor using 3 modules to show how modules can operate with a global approach to variables.

2) Demo Raptor using modules that are passed values to accomplish a specific task.

 

Feedback for MOD4

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

MOD5a - If Statements or Decision Structures (Decisions)

Check How Ready You Are

This section is usually from a Chapter 4 textbook content section. Take a look at the study helps and quiz to see if you need to spend some time here. If you are not an experienced programmer trained in a formal classroom setting you may find some items you should spend extra time studying. Once you feel you have mastered this section you should be ready for our next topic of Decisions. Setting up good decision programs can be one area I struggle with. This is a great reason to use a tool like Raptor. 

Link: Chapter 4 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 4 Quiz

 

Objectives:

The Decision Structure is going to help you give versatility to your program. You will be able to direct instruction to execute some commands and skip others. It is almost like a program that can think. Let's see what we can build.

Color Mixer Project:

We are going to take a look a project from the Gaddis, Program Design & Development book (Chap 4). This project is also in the Gaddis C++ text (Chap 4). Take a look at the project assignment and see what you can do with it. I will review the project requirement first, making some highlights. Then I will look at a very simple Program Analysis Worksheet along with a Hierarch Chart. Finally I will give a 2 part review of an acceptable flowchart. Try your effort first and then watch the videos would be my recommendation.

 

Analyze the Project

Analyzing a project is where the wheels start turning. This looks like a very simple project when you first take a look. Then you might consider whether there is a good way and a not so good way to approach the solution. See what you think.

Start the Design with a Program Analysis Worksheet and a Hierarchy Chart

Designing a program may not start out so exciting. Many people want to skip the initial planning. To get this going right you may need to force your effort into the planning stage rather than jump right into trying to build a program.

Now for the Flowchart

The first segment covering the flowchart is a partial item where I will get things started (Part 1). If you have not started you might want to watch this piece on Raptor and then give it your best effort. Wait on watching Parts 2 and 3 till you have at least tried Part 1. Then you could determine if clean-up is needed when you move forward.

(for flowchart demo videos you might want to enlarge to full screen)

Part 1

 

Part 2

Part 3 

 

Feedback for MOD5a

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

MOD5b - More Decisions (an Advanced Look)

Sometimes you will find this to be the most difficult part of your programming effort. I have taken a problem that has some difficulty and will walk through the work required to break it down into more managable parts. Check it out and see if you can follow the design well enough to create a program.

 

Link to Software Sales (An Advanced Project) - (Click here to proceed)

Quick look at our project (Chapter 4 Ex 7)

Feedback for MOD5b

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

MOD6 - Repetition Structures (Loops)

Check How Ready You Are

This section is usually from a Chapter 5 textbook content section. Take a look at the study helps and quiz to see if you need to spend some time here. If you are not an experienced programmer trained in a formal classroom setting you may find some items you should spend extra time studying. Once you feel you have mastered this section you should be ready for our next topic of Repetition. Setting up a good Repetition Structure can increase the functionality of your program. This is another great reason to use a tool like Raptor. 

Link: Chapter 5 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 5 Quiz

 

One of the most important things you can do with your computer is to repeat an action. We have several ways to describe this process.

Let's talk about a few of the highlights:

Look over your study text and get familiar with this terminology. Then we will attempt a couple of exercises.

 

Exercise #1 (Bug Collector)

If you are using the text from Tony Gaddis then you can follow along with me (Chapter 5 Programming Exercise #1). I going to solve the Bug Collector project with the help of our author's video note. Try to watch this first and then see if you can get the same solution I do. I will follow the Gaddis example and use Raptor to give me a runable flowchart.

 

 

Exercise #2 (Sum of Numbers)

Now let's complete one from scratch. This one is also from the Tony Gaddis chapter on Repition (Chapter 5 Programming Exercise #4).

1) Look over the project.

2) You may want to stop here and see if you can come up with a solution on your own.

3) Review over Carter's version of a Program Analysis Worksheet

4) Solve the problem using Raptor

Feedback for MOD6

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

  

MOD7 - Files

Under construction.

 

 

MOD8 - Arrays

Check How Ready You Are

This section is usually from a later chapter in your textbook called Arrays. Sometimes you may see 2 chapters used to cover this topic. Take a look at the study helps and quiz to see if you need to spend some time here. If you are not an experienced programmer trained in a formal classroom setting you may find some items you should spend extra time studying. Once you feel you have mastered this section you should be ready for our example using Arrays. Raptor can be a very good tool to learn about Arrays. See if you can create a program using the demo below. 

Link: Chapter 8 Review

If you are really energetic you might want to try this quiz.

Link: Chapter 8 Quiz

 

Array Demo

Use this link to demo an Array program (Link: Arrays, click here)

Feedback for MOD8

I really appreciate feedback from people who use my site. Each time you complete a subject from the top it would be great if you could go to the last topic (Survey),complete the survey quiz and then send the email request. Thank you for your help.

 

 

Quick Quiz and Self Survey

My hope is that you will complete this survey when you first start using my site. I will ask my class as we start a term to kick things off. I do hope the examples we cover will be helpful in your exploration into Computer Programming.

 

 

 

When you finish the survey please click check answers.

Please send the survey results using the EMAIL tool below. To get better information please give me your info using the following format:

1) Your Name (separate with a /)

2) Your Email Address (separate with a /)

3) Identify the topic you spent time in (separate with a /)

4) Your course number if you are in one of my classes (empty if you are not in a class)

ex. (Gary Carter/gerro@aol.com/Decisions/CIST1305)