129

GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

  • Upload
    hacong

  • View
    217

  • Download
    2

Embed Size (px)

Citation preview

Page 1: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM
Page 2: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Page 3: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSIntroduction

The Mathematics Curriculum Guide serves as a guide for teachers when planning instruction and assessment. It defines the content knowledge, skills, and understandings that are measured by the Standards of Learning assessment. It provides additional guidance to teachers as they develop an instructional program appropriate for their students. It also assists teachers in their lesson planning by identifying essential understandings, defining essential content knowledge, and describing the intellectual skills students need to use. This Guide delineates in greater specificity the content that all teachers should teach and all students should learn.

The format of the Curriculum Guide facilitates teacher planning by identifying the key concepts, knowledge, and skills that should be the focus of instruction for each objective. The Curriculum Guide is divided into sections: Curriculum Information, Essential Knowledge and Skills, Key Vocabulary, Essential Questions and Understandings, Teacher Notes and Elaborations, Resources, and Sample Instructional Strategies and Activities. The purpose of each section is explained below.

Curriculum Information:This section includes the objective and SOL Reporting Category, focus or topic, and in some, not all, foundational objectives that are being built upon.

Essential Knowledge and Skills:Each objective is expanded in this section. What each student should know and be able to do in each objective is outlined. This is not meant to be an exhaustive list nor a list that limits what is taught in the classroom. This section is helpful to teachers when planning classroom assessments as it is a guide to the knowledge and skills that define the objective.

Key Vocabulary:This section includes vocabulary that is key to the objective and many times the first introduction for the student to new concepts and skills.

Essential Questions and Understandings:This section delineates the key concepts, ideas and mathematical relationships that all students should grasp to demonstrate an understanding of the objectives.

Teacher Notes and Elaborations:This section includes background information for the teacher. It contains content that is necessary for teaching this objective and may extend the teachers’ knowledge of the objective beyond the current grade level. It may also contain definitions of key vocabulary to help facilitate student learning.

Resources:This section lists various resources that teachers may use when planning instruction. Teachers are not limited to only these resources.

Sample Instructional Strategies and Activities:This section lists ideas and suggestions that teachers may use when planning instruction.

1

Page 4: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

The following chart is the suggested pacing guide for the Prince William County Computer Mathematics Curriculum. The chart organizes the objectives by topic. Because many standards are integrated across multiple class sessions, the time suggested exceeds the actual number of class sessions per year. This is meant only to be a suggested guide to assist in planning for the year. The Prince William County cross-content vocabulary terms that are in this course are: analyze, compare and contrast, conclude, evaluate, explain, generalize, question/inquire, sequence, solve, summarize, and synthesize.

Topics Objectives Approximate PacingProblem Solving COM 1 9 BlocksProgram Design COM 2

COM 3COM 4COM 5COM 12COM 13COM 14COM 17

8 Blocks3 Blocks2 Blocks9 Blocks4 Blocks3 Blocks8 Blocks2 Blocks

Program Implementation COM 6COM 7COM 8COM 15COM 16

8 Blocks8 Blocks2 Blocks8 Blocks4 Blocks

Data Manipulation COM 9COM 10COM 11

8 Blocks6 Blocks4 Blocks

Program Testing COM 18COM 19COM 20

3 Blocks2 Blocks3 Blocks

2

Page 5: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProblem Solving

Virginia Standard COM.1The student will apply programming techniques and skills to solve practical real-world problems in mathematics arising from consumer, business, and other applications in mathematics. Problems will include opportunities for students to analyze data in charts, graphs, and tables and to use their knowledge of equations, formulas, and functions to solve these problems.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design and implement computer

programs to solve consumer problems. Analyze and interpret graphs, charts,

and tables in the design and implementation of a computer program.

Design and implement computer programs to- solve mathematical problems, using

formulas;- solve mathematical problems, using

equations;- solve mathematical problems, using

functions;- solve problems related to geometry,

business, and leisure;- solve probability problems;- solve data-analysis problems; and- solve statistical problems.

Key Vocabularyalgorithmcomputer programflowchartprogramming languagesreturnsubtask

Essential Questions How are graphs, charts and tables analyzed and interpreted to design computer

programs? How are subtasks an integral part of computer programs and why are they important? How does a programmer use the desired results of the program to drive the

programming plan? How are algorithms used in computer programs?

Essential Understandings The computer is an essential tool for mathematical problem solving in consumer-related

problems. A subtask that has been solved previously may be used again and again. Programming languages require the use of particular structures to express algorithms as

programs. Designing algorithms is the problem-solving phase of computer programming. Real-world problems that can be modeled mathematically can be solved with a

computer program. Data arising from probability and statistics applications can be displayed in tables and

graphs and analyzed within the structure of a computer program.

Teacher Notes and ElaborationsWriting computer programs, especially those involving formulas, provide a bridge between programming and discussions of formulas and variables that students used in previous math courses. Computer programming allows students to instruct the device to substitute the assigned values for the appropriate variables and simplify the expression. By doing this, students can program a device to accomplish the tasks that may have caused them difficulty in previous mathematics courses. Their programming skills and the capabilities of the device will allow them to explore areas where their mathematics skills might not have allowed them to be successful.

Formulas should be used if the students can make a connection between the formula and their lives.

A program algorithm is a step-by-step plan to solve a problem. The set of instructions is similar to the approach often taken in solving word problems. Writing a computer program is solving a word problem. Students should be able to identify and state the goal of the problem.

(continued)

3

Page 6: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProblem Solving

Virginia Standard COM.1 The student will apply programming techniques and skills to solve practical real-world problems in mathematics arising from consumer, business, and other applications in mathematics. Problems will include opportunities for students to analyze data in charts, graphs, and tables and to use their knowledge of equations, formulas, and functions to solve these problems.

Teacher Notes and Elaborations (continued)To write a computer program, good problem-solving techniques are necessary. Problem solving requires logical thought patterns and practice. The process of learning good programming techniques (problem solving) is acquired by breaking down the tasks into manageable parts. These tasks should be practiced consistently and in a structured format until they become ingrained.

When writing a computer program, the programmer needs to know what the desired results of the program are (the goal of the program). It is necessary for the programmer to know the answers/output the program is supposed to produce.

The ability to recognize the relevant information given in the problem is a problem solving skill that requires regular practice to maintain a high level of proficiency.

When designing and implementing a computer program, the programmer will determine the information the program needs in order to work, and if additional information will be required by the user when the program is executed. The information might be given in the problem, like the length of a side of a triangle or the price of a box of pencils. The information might be implied in the problem and the student would have to find the information. For example, if the sales tax rate is needed to solve a problem, the student might be given the amount of the purchase and the amount of tax paid. The program user might be required to supply information while the program is running. This type of information must be stored in a variable for later use.

A flowchart is a common type of diagram that represents an algorithm or process. It consists of a set of symbols such as rectangles or diamonds and connecting arrows and lines that show the step-by step progression through usually complicated procedures.

In creating a plan for a program, it should be determined what formulas and/or multi-step algorithms will be used. After the plan has been implemented, the results are tested. The programmer tests the results by developing realistic test data. The program should be efficient, and changes made to improve it.

A subtask, (subroutine or subprogram) is a portion of code within a larger program, which performs a specific task and is relatively independent of the remaining code. As the name "subprogram" suggests, a subroutine behaves in much the same way as a computer program that is used as one step in a larger program or another subprogram. A subroutine is often coded so that it can be started (called) several times and/or from several places during a single execution of the program, including from other subroutines, and then branch back (return) to the next instruction after the "call" once the subroutine's task is done. Libraries are collections of subroutines.

In developing more efficient problem solvers, it is important that students learn to develop conventions for naming variables to be used in reusable routines so that they do not conflict with the main program variables. Reuseable code is an important concept in programming.

A programming language is an artificial language designed to express computations that can be performed by a computer. Programming languages can be used to create programs that control the behavior of a machine, to express algorithms precisely.

Programming languages include Visual Basic an object oriented programming environment used to create Window applications. Many programming languages have some form of written specification of their syntax (form) and semantics (meaning). Some languages are defined by a specification document. For example, the C programming language is specified by an ISO Standard. Other common languages include C++, Python, and Java.

4

Page 7: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProblem Solving

Virginia Standard COM.1

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Given the amount of the principal, the interest rate, and the number of years, calculate and print the amount of interest earned and the total balance after adding the principal and the interest together (2 decimal places with $). Remember: interest = principal * rate * time.

Given the pay per hour, the regular hours, and the overtime hours worked in a week, and the fact that the worker makes time-and-a-half for overtime; print the regular pay, the overtime pay, and the total pay. (2 decimal places with $)

Given the linear equation where A 0, input A, B, and C and solve for x.

Remember algebra techniques to get (3 decimal places).

Given the radius of a circle, print its area and circumference. and where pi is a constant 3.14159 (3 decimal places).

Given the length of the two legs of a right triangle (a and b), print the length of the hypotenuse (c), the perimeter and the area. Remember and

perimeter = a + b + c and area = (3 decimal places).

Evaluate the discriminant of the quadratic equation given a, b, and c. The discriminant is (2 decimal places).

Let P and Q be two points on a non-vertical line in the Cartesian plane. Given the coordinates of P(xp,yp) and Q(xq,yq), compute the slope of the line through P and Q and the distance between P and Q.

distance = (4 decimal places)

Ask for a person’s name, mathematics score, and verbal score. Calculate the total SAT score. Do this for 3 people. Print the results in a table.

Write a program that will ask the user for the number and unit price of the pencils, pens, and notebooks purchased. Calculate and print the total cost of the items. Assuming that the sales tax rate is 5%, calculate and print the sales tax. Calculate and print the total cost, including tax, for the purchases.

5

Page 8: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

6

Page 9: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.2 The student will design, write, test, debug, and document a program. Programming documentation will include preconditions and post-conditions of program segments, input/output specifications, the step-by-step plan, the test data, a sample run, and the program listing with appropriately placed comments.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Describe what a computer program is. List and describe the stages involved in

writing a computer program. Describe the function of an algorithm. Describe the interplay between

hardware and software in program execution.

Compare and contrast compiling and executing a program.

Determine what a given output statement will print.

Debug a program. Provide required documentation for a

program.

Key Vocabularyalgorithmcommentcompilercomputer programdebugdocument proceduresexecutehardwareoutputpost-conditionpreconditionprogram segmentssample runsoftware

Essential Questions What is a computer program? How is a computer program debugged? What documentation is required for a computer program? What is the relationship between the hardware and software? What does it mean to compile a program? What does it mean to execute a program? How is a computer program written? How is a computer program traced? What problem solving skills are required to successfully write a computer program?

Essential Understandings The successful completion of a structured program requires problem-solving skills.

Teacher Notes and ElaborationsA computer program contains a set of instructions called program code that tells the computer how to perform a specific task. Each line of code is called a statement. Writing programs involving formulas provides students the ability to explore areas where their math skills might not have allowed them to be successful.

One of the benefits of learning to program a computer is the development of problem solving skills. Students learn to analyze a problem and break it down into smaller, solvable parts. To determine what a given output statement will print students should trace the program.

Hardware is comprised of the physical devices that make up the computer. Microcomputers contain four types of hardware components: input devices, (keyboard, mouse, drives) for entering data and commands, memory for storing commands and data, the central processing unit for controlling the operations of the computer and output devices (monitor, printer, drives) for viewing and storing the processed information.

Computers also require operating system software (runs automatically when the computer is turned on) and application software (written by programmers to perform a specific task). A software program is a sequence of instructions written to perform a specified task for a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute (follow) the instructions. The same program in its human-readable source code form, from which executable programs are derived (compiled),

7

Page 10: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSenables a programmer to study and develop its algorithms.

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.2 The student will design, write, test, debug, and document a program. Programming documentation will include preconditions and post-conditions of program segments, input/output specifications, the step-by-step plan, the test data, a sample run, and the program listing with appropriately placed comments.

Teacher Notes and Elaborations (continued)The stages in writing a computer program generally include:

- Determining the goal of the program- Determining what information is required- What information will the user supply at run time- Developing a plan for the program- Implementing the plan- Testing the results- Program evaluation

An algorithm is a series of steps that tell how to solve a problem. An algorithm created using both English and program code is called pseudo code. Pseudo code is developed for the more complex portions of a program.

A compiler translates the program code into a separate executable file. An executable file can be run independently. The compiler, a computer program (or set of programs) translates source code written in a computer language into another computer language (the target language).

A comment is information placed in a program to explain and clarify program code for a human reader. It is good programming style to include comments wherever code may be ambiguous or misleading. Comments should be used to describe or document procedures. Procedure documentation should include a brief description of what the procedure does followed by any preconditions and post-conditions. The initial requirements of a procedure are called its preconditions. The post-condition is a statement of what must be true at the end of the execution of a procedure, if the procedure has worked correctly. Program segments are sections or blocks of code that perform a specific task.

Output devices display or store processed data. Monitors and printers are the most common output devices. Output is the data produced by a computer program.

A sample run is the process of running the application and entering test data to test different possibilities to reveal any bugs. Debugging is the process of getting an application to work correctly.

8

Page 11: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.2

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Using the following problems, students should design and write computer programs. Students should use appropriate documentation including the preconditions and post-conditions. The programs should be tested, debugged, and run. Given the number of points a basketball player has scored and the number of games

played, print the points-per game average (1 decimal place). A baseball player’s ERA (Earned Run Average) is the number of earned runs divided by

the number of innings pitched then multiplied by 9. Given the number of earned runs and the innings pitched, print the ERA (2 decimal places).

Given the amount of a sale and the rate of commission, print the dollar amount of the commission (2 decimal places and labeled with a $).

9

Page 12: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

10

Page 13: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

11

Page 14: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Design

Virginia Standard COM.3The student will write program specifications that define the constraints of a given problem. These specifications will include descriptions of preconditions, post-conditions, the desired output, analysis of the available input, and an indication as to whether or not the problem is solvable under the given conditions.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: For a given problem, describe the pre-

conditions, post-conditions, and desired output.

Determine whether or not a problem is solvable.

Write program specifications that define the constraints of a problem.

Key Vocabularyalgorithmconstraintsinputoutputpost-conditionpreconditionspecification

Essential Questions What is a program algorithm? How is a general solution to a programming problem developed? What is the importance of program specifications?

Essential Understandings A programmer begins the programming process by analyzing the problem and

developing a general solution (algorithm). The successful completion of a structured program requires problem-solving skills.

Teacher Notes and ElaborationsStudents should be presented with a real world problem that could occur in their personal or occupational life. Formulas can be provided or students can be asked to determine an appropriate formula to solve the problem. Students through a series of steps (algorithm) tell how to solve the problem including a description of the pre-conditions, post-conditions, desired output, and test data. The ability to recognize relevant information given in the problem is a problem solving skill that requires regular practice to maintain a high level of proficiency.

Specification is the first step in creating an application that clearly defines what the program is supposed to accomplish and the restrictions (constraints) for the program. The program specifications should also include a description of what the data to be produced by the program (output) should “look like”. Based on the data entered into the computer (input) and the output requirements, the programmer can determine whether the program can be written to solve the problem presented.

Comments used to document procedures, should also include a description of what the procedure does and any preconditions and post-conditions. The initial requirements of a procedure are called its preconditions. This is a condition that must always be true just prior to the execution of some section of code or before an operation in a formal specification. If a precondition is violated, the effect of the section of code becomes undefined and thus may or may not carry out its intended work. Often, pre-conditions are simply included in the documentation of the affected section of code. Preconditions are sometimes tested using assertions within the code itself, and some languages have specific syntactic constructions for doing so.

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

12

Page 15: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Design

Virginia Standard COM.3The student will write program specifications that define the constraints of a given problem. These specifications will include descriptions of preconditions, post-conditions, the desired output, analysis of the available input, and an indication as to whether or not the problem is solvable under the given conditions.

Teacher Notes and Elaborations (continued)A post-condition is a condition or predicate that must always be true just after the execution of some section of code or after an operation in a formal specification. The post-condition for any routine is a declaration of the properties which are guaranteed upon completion of the routine's execution. Post-conditions are sometimes tested using assertions within the code itself. Often, post-conditions are simply included in the documentation of the affected section of code.

Curriculum Information Resources Sample Instructional Strategies and Activities

13

Page 16: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicProgram Design

Virginia Standard COM.3

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

The student will write program specifications that define the constraints of a given problem. These specifications will include descriptions of preconditions, post-conditions, the desired output, analysis of the available input, and an indication as to whether or not the problem is solvable under the given conditions. Given the number of points a basketball player has scored and the number of games

played, print the points-per game average (1 decimal place). A baseball player’s ERA (Earned Run Average) is the number of earned runs divided by

the number of innings pitched then multiplied by 9. Given the number of earned runs and the innings pitched, print the ERA (2 decimal places).

Given the amount of a sale and the rate of commission, print the dollar amount of the commission (2 decimal places and labeled with a $).

14

Page 17: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

15

Page 18: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Knowledge and Skills

Key VocabularyEssential Questions and Understandings

Teacher Notes and ElaborationsTopicProgram Design

Virginia Standard COM.4The student will design a step-by-step plan (algorithm) to solve a given problem. The plan will be in the form of a program flowchart, pseudo code, hierarchy chart, and/or data-flow diagram.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design a step-by-step plan to solve a

problem. Utilize the following problem-solving

formats:- flowchart;- pseudo code;- hierarchy chart; and- data-flow diagram.

Key Vocabularydata-flow diagramflowcharthierarchy chartpseudo code

Essential Questions How are data-flow diagrams, flowcharts, hierarchy charts and pseudo code used in the

design of a computer program?

Essential Understandings All programs are implementations of algorithms.

Teacher Notes and ElaborationsTo attain the program goal, good programmers analyze the information they have and formulate a step by step plan (algorithm) to solve the problem.

Top Down ProgrammingOne common approach to problem solving is to attack the problem from the top-down. List the large-scale jobs that have to be done in the order in which they must be done. Using a stepwise refinement process, the programmer analyzes each job, breaking it down into small, manageable tasks. The process is repeated until a plan is developed. The process for the top-down method requires considering the tasks as part of an outline, much like the Roman numerals of the outline.

Bottom-Up ProgrammingThis approach to problem solving involves listing all of the subsidiary tasks that need to be accomplished and then assembling the tasks into logical units to build the solution to the problem.

Both approaches have strengths and weaknesses. The most realistic approach to problem solving is probably a combination of top-down and bottom-up.

There are several methods for developing an algorithm.- Pseudo code is a combination of English and calculator/computer commands used to

plan an algorithm. Pseudo code is usually written in semi-outline form and is often little more than a list of jobs that need to be accomplished. Students should write the tasks to be performed in their program using pseudo code and place the tasks in their order of execution. The correctly ordered pseudo code can then be translated into a flowchart.

- A flowchart is a diagram of a program plan. It uses a set of shapes and arrows to display the logic flow of a program. Flowcharts are effective in displaying the flow of conditional structures and looping structures. However, as the programs increase in complexity, flowcharts tend to become cumbersome.

(continued)

16

Page 19: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Questions and Understandings

Teacher Notes and ElaborationsTopicProgram Design

Virginia Standard COM.4The student will design a step-by-step plan (algorithm) to solve a given problem. The plan will be in the form of a program flowchart, pseudo code, hierarchy chart, and/or data-flow diagram.

Teacher Notes and Elaborations (continued)- A hierarchy chart is a type of diagram of the plan for solving a problem. Hierarchy charts are good for analyzing the overarching level

of complex programs, but do not handle loop structures and conditionals efficiently.

- A data-flow diagram is a graphical representation of the "flow" of data through an information system. Data-flow diagrams can also be used for the visualization of data processing (structured design). On a data flow-diagram, data items flow from an external data source or an internal data store to an internal data store or an external data sink, via an internal process. A data-flow diagram provides no information about the timing or ordering of processes, or about whether processes will operate in sequence or in parallel. It is therefore quite different from a flowchart, which shows the flow of control through an algorithm, allowing a reader to determine what operations will be performed, in what order, and under what circumstances, but not what kinds of data will be input to and output from the system, nor where the data will come from and go to, nor where the data will be stored (all of which are shown on a data-flow diagram).

In the implementation phase of the programming sequence, the student codes in the program from the keyboard. While this section is very important, it is also the part of the process that will change over time. While the algorithm for finding the mean of three numbers will not change, the “magic words: of the programming language that teaches the machine to do the job will vary from machine to machine and from computer language to computer language. The emphasis needs to remain on the process, not the results.

17

Page 20: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.4

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

The simple interest formula (I = prt)can be used in several ways:- Calculate the interest earned by investing $1000 at 5% for 10 years.- Calculate the amount to invest if you need to earn $500 in 10 years at 5% interest.- Calculate the interest rate required to earn $500 on a $1000 investment in 10 years.- Calculate the number of years to earn $500 on a $1000 investment at 5% interest.

There are as many variations on a formula as there are variables. If there are four variables devise a problem where the student is given three of them and solves for the fourth.

Convert between metric and customary measures. Example: If an engine holds 4 quarts of oil, how many liters will it hold? How many millimeters are there in half an inch?

Compute the amount of sales tax and the total cost when given the unit price, quantity of each item purchased, and the sales tax rate. Example: If a consumer buys 5 items that cost $1.17 each and the tax rate is 4%, determine the amount of the tax and the total cost.

Compute the amount of commission and total pay when given the percent of commission and the amount of sales. Example: if a salesman earns 7.5% commission on $815 in sales, determine the amount of the commission.

Compute the total pay when given hourly pay rate and the total hours worked (40 hours or less). Example: If a worker earns $7.50/hour and works 35 hours, determine the total pay.

18

Page 21: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

19

Page 22: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSThis page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.5 The student will divide a given problem into manageable sections (modules) by task and implement the solution. The modules will include an appropriate user-defined function, subroutines, and procedures. Enrichment topics might include user-defined libraries (units) and object-oriented programming.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Subdivide a problem into modules by

task. Implement the solution of the problem. Write task-oriented modules, including

- a user-defined function;- subroutines; and- procedures.

Determine the need for a subroutine or user-defined function.

Determine the difference between and the need for internal and external subroutines and functions.

Key Vocabularyexternal subroutinefunctional decompositioninternal subroutinemoduleprocedurereturnsubroutineuser defined function

Essential Questions How are program modules determined? What is the difference between internal and external subroutines? What is functional decomposition?

Essential Understandings Functional decomposition is a way to develop a program in which the problem is

divided into sub-problems whose solutions comprise the solution to the original problem.

Teacher Notes and ElaborationsA procedure is a block of code that performs a specific task. Procedures simplify a program by dividing it up into smaller, more manageable tasks (modules). Modules are separate parts of a computer program and are sometimes used to improve the maintenance of the program.

There are two types of sub procedures (subroutines), event procedures and general procedures. General procedures are user-defined procedures that simplify a program by dividing it into smaller blocks of code. This subroutine reduces the repetitive coding that may need to be repeated several times during program execution. The subroutine is a portion of code within a larger program, which performs a specific task and is relatively independent of the remaining code. A subroutine behaves in much the same way as a computer program that is used as one step in a larger program or another subprogram. A subroutine is often coded so that it can be started (called) several times and/or from several places during a single execution of the program, including from other subroutines, and then branch back (return) to the next instruction after the "call" once the subroutine's task is done.

A library is a collection of subroutines or classes used to develop software. Libraries contain code and data that provide services to independent programs. This allows the sharing and changing of code and data in a modular fashion.

A function procedure is a procedure that performs a specific task and then returns a value.

A user-defined function is a function/procedure provided by the user of a program or environment, in a context where the usual assumption is that functions are built into the program or environment. More modern dialects of BASIC are influenced by the structured programming paradigm, where most or all code is written as user defined functions or procedures, and the concept becomes practically redundant.

20

Page 23: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.5 The student will divide a given problem into manageable sections (modules) by task and implement the solution. The modules will include an appropriate user-defined function, subroutines, and procedures. Enrichment topics might include user-defined libraries (units) and object-oriented programming.

Teacher Notes and Elaborations (continued)An internal subroutine is a block of instructions commencing with a label, ending with a RETURN instruction.

An external subroutine is a subroutine residing external to the caller in a separate script file; its last statement will be an implied RETURN instruction unless an explicit RETURN or EXIT is used.

Functional decomposition refers broadly to the process of resolving a functional relationship into its constituent parts in such a way that the original function can be reconstructed (recomposed) from those parts by function composition. In general, this process of decomposition is undertaken either for the purpose of gaining insight into the identity of the constituent components (which may reflect individual physical processes of interest, for example), or for the purpose of obtaining a compressed representation of the global function, a task which is feasible only when the constituent processes possess a certain level of modularity (independence or non-interaction).

Object-oriented programming (OOP) uses classes, which are program code and data, to create objects. Objects can have a visual representation such as a dialog box or a button and are used to reduce the complexity of developing graphics-based programs. Object-oriented programming is widely used because it generates reusable, reliable code.

21

Page 24: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.5

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Compute overtime pay (time and a half), regular pay, and total pay when given the hourly pay and total pay (over 40 hours). Example: If a worker ears $7.77/hour and works 48 hours, determine the total pay.

Compute the amount of Social Security withheld from a paycheck when given total pay. Example: If Social Security withholding is 7.5% of gross pay, how much is withheld from a worker who earns $7.25/hour and works 40 hours in one pay period?

22

Page 25: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

23

Page 26: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

24

Page 27: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Implementation

Virginia Standard COM.6The student will design and implement the input phase of a program, which will include designing screen layout and getting information into the program by way of user interaction, data statements, and/or file input. The input phase also will include methods of filtering out invalid data (error trapping).

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design a screen layout to facilitate

input. Design program information input by

- user interaction;- data statements (BASIC); and- file input.

Filter out invalid data, using a variety of methods (error trapping).

Construct input statements to read values into a program.

Determine the contents of variables that have been assigned values by input statements.

Key Vocabularyerror trappingfileinputinvalid datascreen layoutsecondary storagesentinel value

Essential Questions How can data be entered into a program? How is data filtered? How is data stored? How is invalid data handled?

Essential Understandings A program needs data on which to operate. A file is a named area in secondary storage that holds a collection of information.

Teacher Notes and ElaborationsAfter the correctly ordered pseudo code has been translated into a flowchart, input can be obtained by assignment statements or by input statements with appropriate prompts. Input should be verified whenever possible and stored in the appropriate variable type.

Each language varies when constructing input statements.

Prior to complex challenges in programming, students must understand how to label locations in memory, get data into the memory locations, and print data and messages on the screen. Students will assign values to variables in the program or ask the user to input data and have the program then display the data on the screen. Appropriate screen layout is a key concept when inputting values. Input is the signal or data received by the computer system.

The programmer may want to restrict data entry to a certain range. By providing immediate help and a clear message when invalid data is entered is essential to make the data entry process go smoothly.

Output is the signal or data sent from the computer. Input devices for a computer may be a keyboard or a mouse. Output devices for a computer include the printer and monitors. Devices for communication between computers such as modems and network cards serve for both output and input.

A file is a collection of data stored on a disk, diskette or flash drive in a form the computer can read. Secondary storage (or external memory) differs from primary storage in that it is not directly accessible by the CPU. The computer usually uses its input/output channels to access secondary storage and transfers the desired data using intermediate area in primary storage. Secondary storage does not lose the data when the device is powered down—it is non-volatile.

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

25

Page 28: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Implementation

Virginia Standard COM.6The student will design and implement the input phase of a program, which will include designing screen layout and getting information into the program by way of user interaction, data statements, and/or file input. The input phase also will include methods of filtering out invalid data (error trapping).

Teacher Notes and Elaborations (continued)To prevent the application from crashing or behaving unpredictably, you can include code that intercepts the invalid data or error and prompts the user to re-enter correct data. The process of intercepting and handling a run-time error is called error trapping (filtering). Some languages use type casting to avoid type mismatch.

A sentinel value or flag signifies the end of a looping construct and is not one of the normal input values.

Curriculum Information Resources Sample Instructional Strategies and Activities

26

Page 29: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicProgram Implementation

Virginia Standard COM.6

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Using the formula I = prt, compute simple interest when the user inputs the principal (p), the interest rate (r) and the number of years (t). - Example: If an investor can invest $2,500 at 6.5% interest for 3 years, how much

interest will he earn and what will the total balance be at the end of that time? - Example: If a person borrowed $6,500 at 11 % interest for 4 years, how much

interest would they pay and what would be the total amount to pay off the loan? Compute unit price and determine the better deal, inputting several packaging options

and the cost of each option. Example: Which is the better buy, 6 for $2.57 or 24 for $10.11? How much is saved?

How much more does it cost to purchase an item on an installment plan compared to paying cash? Example: How much more does it cost to purchase a $525 item on an installment plan of 12 payments of $348 rather than paying cash at the time of purchase?

Compute the total cost of renting a car when given the daily cost, the cost per mile, the number of days, and the total miles. This can be enhanced by allowing a certain umber of miles free for each day and charging for any additional miles over the allowance. Encourage students to contact rental companies and get their fee structure. Example: What is the total cost to rent a car for 4 days and drive it 520 miles if the rental car company charges $25 per day and $.20 per mile? Is it cheaper to use another company that charges $30 per day put allows 100 free miles each day and then $.20 per additional mile over the allowance?

Data: Given an undetermined number of numeric values, the program should calculate the mean and the range. These numbers can represent attendance, percent defective parts produced, physical measures of a product, average miles driven per day by rental cars, daily sales figures, or average hours per week playing video games. Whatever the choice of values, they should represent a real situation.

TO QUIT ENTER -1ENTER A VALUE 467ENTER A VALUE 479ENTER A VALUE 503ENTER A VALUE 459ENTER A VALUE 486ENTER A VALUE -1MEAN IS 478.8RANGE IS 36

These values do not always have to be positive. You could enter the deviation from the mean, which would involve positive and negative values. Programs should test for invalid data.

27

Page 30: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

28

Page 31: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Knowledge and Skills

Key VocabularyEssential Questions and Understandings

Teacher Notes and ElaborationsTopicProgram Implementation

Virginia Standard COM.7 The student will design and implement the output phase of a computer program, which will include designing output layout, accessing a variety of output devices, using output statements, and labeling results.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design an output layout. Access various output devices. Use output statements. Label results.

Key Vocabularylabel

Essential Questions How is the output dependent on the input? What are some common formats to display output data? How is the output portion of a program achieved? How is output labeling achieved?

Essential Understandings Output is dependent on input. Implementation of the output portion of a program includes designing the output and

displaying it in the desired format.

Teacher Notes and ElaborationsA label is used to display information.

An output device is any piece of computer hardware equipment used to communicate the results of data processing carried out by a computer to the outside world, such as a screen (monitor), printer, or file(s).

Output layout should be displayed in a user friendly form. If the output is the result of averaging three test grades for a student, the output could be printed as:

“YOUR AVERAGE IS____”"EXCELLENT WORK!”

If different data has been entered, the output could be printed as:“YOUR AVERAGE IS____”"PLEASE SEE YOUR TEACHER.”

29

Page 32: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Implementation

Virginia Standard COM.7

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Design and implement a program that computes the cost of carpeting a room when the length and width of the room is entered and the cost per square foot (or square yard) of the carpet is entered. Other examples can involve surfaces that are circles, triangles, or other shapes. Example: If carpeting costs $30 per square yard, what is the total cost to carpet a room that is 17 feet by 14 feet? The program should print the output in an appropriate layout that labels the results.

Unit Price: Given two or more packaging purchase options, calculate and display the unit price of each and determine and display the best value. For Example:

TO QUIT ENTER ENTER QTY 6ENTER PRICE 3.06UNIT PRICE .51ENTER QTY 15ENTER PRICE 8.55UNIT PRICE .57ENTER QTY BEST VALLUE .516 FOR 3.06

30

Page 33: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Implementation

Virginia Standard COM.8 The student will design and implement computer graphics, which will include topics appropriate for the available programming environment as well as student background. Students will use graphics as an end in itself, as an enhancement to other output, and as a vehicle for reinforcing programming techniques.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design computer graphics. Implement computer graphics. Plot points and areas. Determine and set window or screen

dimensions. Determine and set screen and

background colors. Use box commands. Describe the role of graphics in the

computer environment.

Key Vocabularygraphicsoperating system

Essential Questions How are points plotted? What is the role of graphics and color in the computer environment?

Essential Understandings Work with computer graphics is specific to the computer operating system.

Teacher Notes and ElaborationsRemark statements included in a program will be limited on the calculator. Programs using graphics or involving graphics animation will be limited on the calculator. Despite their impact on the size and complexity of programs the limitations of the graphing calculator do not constrain access to the Computer Mathematics standards.

An operating system is the software on a computer that manages the way different programs use its hardware, and regulates the way a user controls the computer. Operating systems are found on almost any device that contains a computer with multiple programs. Some popular modern operating systems for personal computers include Microsoft Windows. All microcomputers run software that allows the user to communicate with the computer using the keyboard and mouse. This software is called the disk operating system.

Some standard Windows dialog box commands that are used are:Message boxOpen File dialog boxSave File dialog boxBrowse for Folder dialog BoxColor Picker dialog boxFont Picker dialog box

Graphics are visual presentations on a computer screen and often combine text, illustration, and color. Graphics can be functional or artistic. An image can be complex or a simple graphic such as a solid circle or square.

Colors and graphics are used to make applications easier to understand and more interesting.

The postion of an object on the screen is determined using a coordinate system with a horizontal x-axis and a vertical y-axis. The upper-left corner of the screen is (0,0).

Plotting points and areas is dependent upon the available programming environment. Screen

31

Page 34: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSdimensions and window dimensions also vary from computer to computer.

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Implementation

Virginia Standard COM.8

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Draw a figure such as a snowman or a house. Create a two-dimensional game such as tic-tac-toe or pong.

32

Page 35: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicData Manipulation

Virginia Standard COM.9 The student will define simple variable data types that include integer, real (fixed and scientific notation), character, string, and Boolean.

Virginia Standard COM.10 The student will use appropriate variable data types, including integer, real (fixed and scientific notation), character, string, and Boolean. This will also include variables representing structured data types.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Define and use variable data types,

including- integer;- real (fixed and scientific notation);- character;- string; and - Boolean.

Write numeric and string variables, using valid names.

Key Vocabularyaggregate constantBoolean variablecharacterconstantintegerliteral constantnumeric variablestring variablevariable

Essential Questions What are the differences between numeric and string variables? When is Boolean data used? How is the appropriate variable data type determined? How is data manipulated through the type of data defined? How are variables stored in memory? What is the storage size of each data type? What is the range of values for each data type? Determine the appropriate data type given the context of the problem?

Essential Understandings A data type is a set of values and a set of operations on the values. Boolean data has only two literal constants, and they represent TRUE and FALSE. A string is an array for which there exists an aggregate constant.

Teacher Notes and ElaborationsTreating a character as a one letter string and using real number variables with values of 0 for FALSE and 1 for TRUE simulates Boolean variables.

A variable is given a value through assignment and its value may change. Variable assignment statements must be written so that the identifier (variable name) is on the left side of the equal sign and the value is on the right.

Students must understand that variables in programming are not the same as variables in other mathematics courses. A variable is traditionally defined in mathematics courses as a symbol that represents an unknown value. In programming, a variable is a name given to a location in memory. It makes sense to write x + 1 = x. This does not mean that x + 1 is equal to x or that one should solve for x. It simply tells the computer to take the value stored in the memory location called x, add 1 to it, and then store the resulting value into the location called x. In programming, variables are used to store and retrieve data, but not to solve for a variable. Variable names should be meaningful names. Some variable names can not be used because they are key or reserved words.

Numeric variable types of data include integer and real number. Non-numeric types include character (a single letter), string (words and other text data), and Boolean.

Integer is a data type which is for whole number signed numbers.

33

Page 36: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

34

Page 37: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicData Manipulation

Virginia Standard COM.9 The student will define simple variable data types that include integer, real (fixed and scientific notation), character, string, and Boolean.

Virginia Standard COM.10 The student will use appropriate variable data types, including integer, real (fixed and scientific notation), character, string, and Boolean. This will also include variables representing structured data types.

Teacher Notes and Elaborations (continued)Floating-point numbers include float and double which represent numbers with fractional precision. Scientific notation uses a standard notation, floating-point number plus a suffix that specifies a power of 10 by which the number is to be multiplied.

A literal constant is a value that is expressed as itself rather than as a variable's value or the result of an expression, such as the number 3 or the string "Hello". A constant is a meaningful name that takes the place of a literal and retains this same value throughout the program, as opposed to a variable, whose value may change.

The string variable represents a set of characters, also called a string. A string can include the letters of the alphabet, digits, and in general any character than can be typed or displayed, such as $, %, and spaces. A String assignment requires using double-quotation marks (“).

An aggregate is a collection of entities stored as one unit. An array is the basic mechanism for storing a collection of identically typed entities. A user defined type, sometimes called an aggregate constant defines a variable type that can store several related data items in one structure.

A Boolean variable is useful for representing on/off and yes/no values. Boolean variables are initialized to FALSE, which is equivalent to 0.

A constant is a named memory location which stores a value that cannot be changed at run time from its initial assignment. The use of named constants is good programming style because they give unchanging values a meaningful name and make program code easier to read.

When a character, such as a letter of the alphabet, needs to be stored in memory, it is stored as a number. ANSI (American National Standards Institute) developed a code called ASCII for representing characters on personal computers. The ASCII (American Standard Code for Information Interchange) code uses numbers between 0 and 255 to represent each letter of the alphabet, both uppercase and lowercase, numerals 0 through 9, and many other special characters.

Curriculum Information Resources Sample Instructional Strategies and Activities

35

Page 38: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicData Manipulation

Virginia Standard COM.9 Virginia Standard COM.10

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Compute amount of tip when given the amount of the bill. Note that 15% could be used as a constant and the bill as a variable to illustrate the difference between constants and variables. Example: If the bill at a restaurant is $32.15 and the customary tip is 15%, how much should be left as a tip?

Write a program that displays the following on the screen:- “Hello World”- The value 7.53- “My average is “, 93.7.- “My average is”, (99+87)/x.- Store the value 93.7 into a memory location called A, then display “My average is”,

A.- Store the formula (99+87)/2 into a memory location called A, then display Name,

your average is A.- Store a name into a string location and store the value 99 in X and 87 in Y. Store the

formula (X+Y)/2 in A, then display Name, your average is A. Go back through the previous activities; ask for the input rather than assigning it from

within the program.

36

Page 39: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

37

Page 40: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Knowledge and Skills

Key VocabularyEssential Questions and Understandings

Teacher Notes and ElaborationsTopicData Manipulation

Virginia Standard COM.11 The student will describe the way the computer stores, accesses, and processes variables, including the following topics: the use of variables versus constants, variables' addresses, pointers, parameter passing, scope of variables, and local versus global variables.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Determine when use of a variable is

appropriate. Describe how a computer stores,

accesses, and processes variables. Incorporate variable addresses,

pointers, and parameter passing into programs.

Differentiate between local and global variables, and describe their appropriate use.

Compare and contrast variables and constants.

Key Vocabularyconstantglobal variablelifetime of a variableparameterparameter passingpointerscope of variablevariable address

Essential Questions How does a computer store, access and process variables? What is the difference between local and global variables? How are variable addresses, pointers and parameters passed?

Essential Understandings Computers consist of hardware components that interact with software.

Teacher Notes and ElaborationsOne method that provides an opportunity to discuss concepts of global variables versus local variables, the scope of a variable, and parameter passing is to start with one part of a project, plan a strategy, write the code and test the program. Move on and do the same with another part of the project. Once each part works separately, put them together and see if they still interact nicely. Keep going until the project is complete. Remind students that all variables are global which means that each of the subroutines has access to all variables. The same variable name cannot be used for two different things. For example, if T represents Federal Income Tax in one subroutine, T cannot be used to represent State Income tax in another subroutine.

The scope of a variable or constant refers to its accessibility among procedures. For example, the scope of a variable declared in an event procedure is limited to that procedure. No other procedure can refer to that variable or change its value because it is not accessible to any other procedure. Variables and constants declared in a procedure are said to be local to that procedure. In addition to scope, variables have a lifetime in which they exist in memory. The lifetime of a local variable is the duration of the procedure in which it is declared. A global variable’s lifetime is the duration of the program.

Global variables and constants declared in the general section of a form module are accessible to every procedure in the module. A global variable declaration should use the key word Private in front of the keyword Const. A constant is a named memory location which stores a value that cannot be changed at run time from its initial assignment. This must be declared in a Const statement.

A parameter is a special kind of variable used in a subroutine to refer to one of the pieces of data (arguments) provided as input to the subroutine. An ordered list of parameters is usually included in the definition of a subroutine so that each time the subroutine is called, it arguments for that call can be assigned to the corresponding parameters.

(continued)

38

Page 41: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Questions and Understandings

Teacher Notes and ElaborationsTopicData Manipulation

Virginia Standard COM.11 The student will describe the way the computer stores, accesses, and processes variables, including the following topics: the use of variables versus constants, variables addresses, pointers, parameter passing, scope of variables, and local versus global variables.

Teacher Notes and Elaborations (continued)When a variable is passed by value, its value is stored in a new memory location after the procedure has finished executing; this memory location no longer stores the value. When a variable is passed by reference, the parameter refers to the memory location of the argument passed (parameter passing).

The variable address is the location in memory where the value is stored.

A pointer is a programming language data type whose value refers directly to (or "points to") another value stored elsewhere in the computer memory using its address. For high-level programming languages, pointers effectively take the place of general purpose registers. A pointer references a location in memory, and obtaining the value at the location a pointer refers to is known as dereferencing the pointer. A pointer is a simple, less abstracted implementation of the more abstracted reference data type (although it is not as directly usable as a C++ reference). Several languages support some type of pointer, although some are more restricted than others.

39

Page 42: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicData Manipulation

Virginia Standard COM.11

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

40

Page 43: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

41

Page 44: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSThis page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.12 The student will translate a mathematical expression into a computer statement, which involves writing assignment statements and using the order of operations.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Translate a mathematical expression

into a computer statement. Use the order of operations to simplify

expressions. Write variable assignment statements. Construct and evaluate expressions that

include multiple arithmetic operations.

Key Vocabularyassignment statementexpressionmodulus divisionvariable

Essential Questions How are mathematical expressions written into a computer program? What is an assignment statement?

Essential Understandings A variable identifies a location in memory where a data value that can be changed is

stored. An assignment statement stores the value of an expression into a variable. The order of operations is

- parentheses;- exponents;- multiplication and division in order from left to right; and- addition and subtraction in order from left to right.

Variable assignment statements will differ depending upon the programming language used.

Teacher Notes and ElaborationsA variable is a named memory location that stores a value.

An assignment statement sets or re-sets the values stored in the storage location(s) and uses the equal sign to give the property on the left of the equal sign the value on the right of the equal sign. The assignment statement often allows the same variable name to contain different values at different times during program execution. It is one of the basic statements. In an assignment statement, data is automatically converted to match the type of the variable it is being assigned to.

Data should be processed using formulas and results displayed in a user-friendly form. Students may need to manipulate the formulas to get them into a useable form. For example, students may be given the formula for converting Fahrenheit to Celsius,

, then asked to write a program to convert Celsius to Fahrenheit.

Visual Basic includes a set of built in arithmetic operators including exponents (^), multiplication (*), division (/), addition (+), and subtraction (-). In addition to the standard built in operators Visual Basic includes two other division operators. (\) operator performs integer division, and the Mod operator performs modulus division. Integer division truncates the decimal portion of the quotient which results in an integer. Modulus division returns the remainder resulting from division. The operators are used to form an expression which is evaluated using the order of operations.

42

Page 45: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.12

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

There are as many variations on a formula as there are variables. If there are four variables, devise a problem where the student is given three of them and solves for the fourth and students practice solving literal equations. They also have an opportunity to explore the world outside of the classroom by discovering what interest rate could be expected for various investments such as savings accounts, savings bonds, government bonds, corporate bonds, and stocks. They can discover that an investment with a 10% return doubles every seven years. Have the students ask for the user’s name and refer to the user by name in the output. They will practice dealing with string data and the program will be more user friendly.

Use the formulas and . Convert between Celsius and

Fahrenheit. Rather than asking students to convert 25°C to Fahrenheit, state the problem as “in planning a trip to Canada, we found the average high temperature at the time we will visit is 25°C. What type of clothes should we pack? Why?

Sales Tax Project: Ask the user for their name, the amount of the sale and the percentage sales tax. The program output should greet the user, calculate and display the amount of the sales tax and the total amount of the sale. Students should restate the problem in their own words, determine what the output should be, establish the information they have been given, and determine the formula(s) they need. The students should write a plan using pseudo code and use test data to debug the program. Test data might include: Amount of the sale $15.50 and a sales tax rate of 4.5%.

Work: Write a program that will ask the user to input the amount of time it takes for a worker to complete a job. The user will continue to input times for two workers. The program will then calculate how long it will take all the workers working together to complete the job.

Proposed Strategy-Solve the work equation

. In doing so, we get

. Challenge: Once the

program can handle two workers, modify it to handle three workers. Then modify it further to handle an undetermined number of workers where the user could continue to enter the times that workers can do the job alone until they enter a code number, such as

, indicating they are finished. Your final product would offer the choice of two workers, three workers, or N workers.

Change. Write a program that displays the minimum number of coins necessary to make the change entered by the user. The change can be made up of quarters, dimes, nickels, and pennies. This could be expanded to include paper currency.

Time conversion. Write a program that allows the user to enter a time in minutes and 43

Page 46: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSthen displays the time in hour:minute form.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.13 The student will select and implement built-in (library) functions in processing data.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Use library functions in designing

programs to process data. Use library functions that are arithmetic

or string operators. Invoke a value-returning function.

Key Vocabularyarithmetic operatorsindependent variablelibrary functionstring operatorsvalue returning functionmodulus divisionexpression

Essential Questions What are string manipulation functions and how can they be used? What is the importance of library functions?

Essential Understandings The argument of a library function is a value or expression associated with the

independent variable. A library function is a subroutine.

Teacher Notes and ElaborationsMany graphing calculators have built-in applications. These are programs that are already written and included in the memory of the calculator when purchased. Although it may not be considered “programming” to execute someone else’s program, it is possible to learn from these programs and determine how these programs do what they do. For the TI-83+, most of the applications are financial in nature and can introduce the student to important concepts, such as the present value of money, the future value of money, rate of return, amortization schedules, effective interest rate, and annuities. Students can use the graphing calculator to gain a working knowledge of these concepts in order to write programs of their own.

Arithmetic operators are built into Visual Basic. The operators include exponentiation (^), multiplication (*), division (/), addition (+), and subtraction (-). In addition to the standard built in operators Visual Basic includes two other division operators. (\) operator performs integer division, and the Mod operator performs modulus division. Integer division truncates the decimal portion of the quotient which results in an integer. Modulus division returns the remainder resulting from division. The operators are used to form an expression which is evaluated using the order of operations.Arithmetic operators are used to form expressions. An expression can be used anywhere a numeric valued is allowed. An expression is not enclosed in quotation marks because quotation marks indicate text.

An independent variable is a quantitiy that is is available at the start of a process, whereas dependent variables are dependent upon independent variables.

A library is a collection of subroutines used to develop software. Libraries contain code and data that provide services to independent programs. Most compiled languages have a standard library, but programmers can also create their own custom libraries.

44

Page 47: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Design

Virginia Standard COM.13 The student will select and implement built-in (library) functions in processing data.

Teacher Notes and Elaborations (continued)Visual Basic includes several built in functions for manipulating strings (string operators). These functions include changing strings to all lowercase and changing strings to all uppercase. Portions of strings called substrings are returned, by using Left, Right, and Mid. Length is the number of characters from the beginning (the left) of the string to return, or the number of characters starting from the end (the right) of the string to return or Mid which returns a number of characters starting with the start character of a string. Mid can also be used to replace characters in a string. The Len function returns a count of the number of characters in a string including spaces (A space is a character.).

A value returning function (return type) defines and constrains the type of value returned from a method or function. In many programming languages (especially those that are statically-typed, such as Java, C++, C) the return type must be explicitly specified when declaring a function.

In a Java example:public int someMethod()

the return type is int. The program can therefore rely on the method returning a value of type int. Various mechanisms are used for the case where a subroutine that does not return any value, e.g., a return type of void in some programming languages:

public void returnNothing()

45

Page 48: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.13

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

These are examples of activities for the TI83+APPS menu that can be used:Loans: Use the TVM Solver to investigate situations involving loans by entering data for all

except one of the following: N-number of payments, I%-interest rate, PV-present value (loan amount), PMT-amount of payment (this will be a negative number since it is a cash outflow), P/Y-payments per year. Place the cursor on the one left blank and press ALPHA SOLVE to solve for the missing data.

If a student wants to buy a car for $6500 and they pay $500 as a down payment. If they finance the remaining balance with a loan at 7% interest, how many months will it take to pay off the loan if their current budget constrains will allow them to make payments of $250/month? If a new car costs $10,000 and can be financed for 36 months at 7%, what would the monthly payments be? Have students look through the newspaper or other sources of information to find costs of vehicles, current interest rates, et cetera. Any type loan or savings situation can be investigated with these applications.

Savings Use the TVM Solver to investigate situations involving savings by entering data for all

except one of the following: N-number of payments, I%-interest rate, PV-present value of savings (this will be a negative number since it is a cash outflow), FV-future value of savings, C/Y-compounded interest payments per year. Place the cursor on the one left blank and press ALPHA SOLVE to solve for the missing data.

Amortization The first task is to have the students find out what amortization means. They may know

what it is, but may not know it had a name. To amortize a debt is to gradually pay off the debt by making payments at certain time intervals until it is paid off.1. Select Finance from the APPS menu, and then select the TVM Solver. If you wish to

determine the loan balance over the life of a loan, enter the number of payments in N, the interest rate in I%, the payment amount in PMT remembering that is will be a negative since it is a cash outflow, the future value FV should remain zero since we want to pay the balance down to zero, and the number of payments per year in P/Y.

2. Move the cursor to PV and press [ALPHA] [SOLVE]. This displays the present value of this arrangement, which should be the beginning balance of the loan.

3. From the MODE select Par for parametric on the 4th line down. Pres [Y=}.4. Press [X, T, , n] to assign XIT as T.5. For YIT , go to the APPS menu, select Finance, and then select 9: bal(6. Press [X, T, , n] to assign YIT as bal(T).7. Press [WINDOW] and enter Tmin = 0, Tmax = the number of payments. Tstep =

payments per year, Xmin = 0, Xmax = the number of payments, Ymin = 0, Ymax=a

46

Page 49: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSnumber a little larger than the PV you solved for in step 2. Set Xscl and Yscl to convenient values.

8. Press [TRACE] to get graph. Use left and right arrows to determine the loan balance after various numbers of payments.

47

Page 50: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

48

Page 51: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Design

Virginia Standard COM.14 The student will implement conditional statements that include “if/then” statements, “if/then/else” statements, case statements, and Boolean logic.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Construct a simple logical (Boolean)

expression to evaluate a given condition.

Construct an “if/then” statement to perform a specific task.

Construct an “if/then/else” statement to perform a specific task.

Use conditional statements to incorporate decision making into programs.

Key VocabularyBoolean logical operatorscase statementconditional statementswitch statement

Essential Questions Why are conditional statements important in computer programs? When would a programmer use Boolean logic? What are case statements?

Essential Understandings Boolean logic is a system using variables with only two values: TRUE and FALSE. The “if” statement is the fundamental control structure that allows branches in the flow

of control.

Teacher Notes and ElaborationsConditional statements or decision structures determine program flow and change the flow of the program by executing a set of commands only if a condition is true and skipping them if the condition is false. If…Then, If…Then…Else statements are conditional statements that branch to the Then statement when the condition is true. The Else portion of the statements are executed when the condition is false. Conditional statements are common across many programming languages. The programming limitations for using conditionals on the graphing calculator involve case statements (also known as multiple selection control structures). Unlike other languages, such as Java and C++, the graphing calculator may not be capable of supporting multiple selection commands such as switch…case, and else…if. These tasks can still be accomplished by employing multiple If statements The disadvantage of using a series of If statements is lack of efficiency.

If is used to create a single selection control structure. The If command is followed by a condition which can be determined to be true or false and is also referred to as a Boolean test. This differs from a Boolean variable, which is available in many programming languages and stores TRUE or FALSE as its data. If the condition is true, control goes to the next command and it is executed. If the condition is false, the next command, and ONLY the next command, is skipped and control will go to the following command.

Example: The If…Then statement can take the form:If condition Then statementsEnd If

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

49

Page 52: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Design

Virginia Standard COM.14 The student will implement conditional statements that include “if/then” statements, “if/then/else” statements, case statements, and Boolean logic.

Teacher Notes and Elaborations (continued)Example: The If…Then…Else statement can take the form:

If condition Then statementsElse statementsEnd If

Example: The If…Then…ElseIf statement can take the form:If condition Then statementsElseIf condition Then statements…Else statementsEnd If

The statements can be a single statement or multiple statements. There can be multiple ElseIf clauses, and the last Else clause is optional.

The Boolean expression that evaluates to either TRUE or FALSE may be a Boolean variable or an expression formed using relational operators (=, <, <=, >, >=, <>). A Boolean expression may also include Boolean logical operators (And, Or, Not).

A switch statement is a type of selection control statement. The purpose of the switch statement is to allow the value of a variable or expression to control the flow of program execution through branching. This reduces repetitive coding and allows for faster program execution. Although conceptually the same as the switch statement, a case statement is a statement that is different in syntax.

Curriculum Information Resources Sample Instructional Strategies and Activities

50

Page 53: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicProgram Design

Virginia Standard COM.14

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Given three test grads, calculate and print the student’s average. If they have an “A” average print “EXCELLENT JOB!!”. If the student is failing, print “YOU ARE FAILING AND MAY NEED TO ATTEND SUMMER SCHOOL”.

Given any real number, print its absolute value. (If the number is < 0, then n = -n). An example of this would be to find the distance between two mile markers or exits on the interstate. What is the distance between exits 179 and 296? Calculate the difference. Then, If the difference is negative, multiply it by -1 to get the absolute value of the distance.

Fraction Calculator Project: This project will ask the user for two fractions and the operation to be performed. It will then perform the operation and simplify the result. This program will need to be broken down into smaller tasks and then the program can be written to accomplish each one.1. Write a program that will input the numerators and denominators of two fractions

and the operation to be performed. Validate the input for the denominate to insure that it is not zero. Since the operation is not a numeric value, use a String variable to store the data.

2. Write four separate programs one to add the fractions, one to subtract, one to multiply, and one to divide. At this point do not worry about simplify or that the numerator and denominator might both be negative. Just determine numerator and denominator of the answer. The programmer may find it easier for addition and subtraction if you use a common denominator (denominator1*denominator2) rather

than determining the least common denominator. For example, would result

in and (this will be simplified in the next program). Go back to the program

written previously (in step 1) and add If statements that will transfer control to the ADD program if the operation is +, the SUBTRACT program if the operation is -, the MULTIPLY program if the operation is *, and the DIVIDE program if the operation is /. At this point, the project should ask for the numerator and denominator of each fraction, insuring the denominator is not zero, and the operation to be performed. It should then perform the indicated operation with the result being a fraction that has not yet been simplified. Display this result anyway so as to ensure that the operation programs work correctly. This part of the program may be deleted later.

3. Write a program to address the signs of the numerator and denominator. It is

acceptable to have or but not acceptable to have or . The simplest and

most efficient method would be to take the opposite of the numerator and denominator in any fraction where the denominator is negative.

(continued)

51

Page 54: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Sample Instructional Strategies and Activities

(continued)TopicProgram Design

Virginia Standard COM.14

4. Write a program to simplify the fraction by dividing the numerator and denominator by the greatest common factor. One method to determine the GCF is to determine the absolute value of the numerator and denominator. Create a String variable and assign NOTFOUND to it. Create a For loop starting at the smaller absolute value (maximum possible GCF) counting down by ones. The first value that divides evenly into both the numerator and denominator in the GCF. Use a GOTO statement to bail out of the loop. Simplify the answer by dividing both the numerator and denominator by the GCF. Display the answer on the screen.

Input the student’s average and output the letter grade using the school grading scale. Given three test grades, calculate and print the student’s average. If the student has an “A” average print” YOUR AVERAGE IS___.”

On the next line print ”EXCELLENT WORK!!) Given three test grades, calculate and print the student’s average. Print the appropriate message “YOU PASSED” or “YOU FAILED”. Input the numerator and denominator of a fraction. Print the decimal equivalent of the fraction.

(If the denominator is zero, the value is undefined. Else, the value is .)

Ask the user to input their name and password. If they match the name and password in the program, welcome them, otherwise, deny them access. Notice that String data will be used and the data must be in double quotes.

Input the hours worked and the pay per hour. If the number of hours is less than or equal to 40 calculate the pay using the formula: total pay = hours*pay per hour. For everyone ELSE use the formula: total pay = 40*pay per hour + (hours-40)*pay per hour*1.5.

Given three test grades, calculate and print the student’s numeric average and the appropriate letter grade.

52

Page 55: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Implementation

Virginia Standard COM.15 The student will implement loops, including iterative loops. Other topics will include single entry point, single exit point, preconditions, and post-conditions.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Determine when a loop is needed in a

program. Implement loops into programs. Include

- iterative loops;- pre-test loops; and- post-test loops.

Incorporate single entry point, single exit point, pre-conditions, and post-conditions into loops.

Key Vocabularyiterative looploopnested looppost-test looppre-test loopsingle entry pointsingle exit point

Essential Questions When is it appropriate to use loops in a computer program? How does a programmer decide which loop is best?

Essential Understandings A loop executes a sequence of statements repeatedly. Nested loops contain other loops.

Teacher Notes and ElaborationsA loop controls program flow and allows a set of statements to be executed a number of times. They allow computers to perform repetitive tasks quickly and accurately. Computers go about their job indefinitely with no loss of speed or accuracy and loops allow the rapid solution to both complex problems and problems that are not so complex but require a large number of repetitions. Different types of problems require the special features of one type of loop over another. One of the important skills needed by a programmer is the ability to deicide when a loop is needed and which type of loop would be most efficient.

The decision on whether or not to use a loop structure is usually an easy one. If you have to do the same job more than once, there has to be a better way and that way usually involves using a loop. The three types of loop structures are iterative, pre-test, and post-test.

Iterative loops or counting loops are the most basic type of loop and are used when the number of times a task is to be one is known or when the first and last value of a variable along with the size of the increment from first to last is known.

The syntax of an iterative loop is:For (initialization; condition; change/step) Body of the loopEnd

Iteration is the repeating of one or more statements. The Do…Loop; an iterative loop, evaluates a condition to determine if the loop is to be repeated. When the condition is true, the body statements are executed again and then the condition is reevaluated. The loop is repeated until the condition is false.

Example: The Do…Loop statement takes the form:Do StatementsLoop While condition

(continued)53

Page 56: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Implementation

Virginia Standard COM.15 The student will implement loops, including iterative loops. Other topics will include single entry point, single exit point, preconditions, and post-conditions.

Teacher Notes and Elaborations (continued)In most computer programming languages, a While Loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. The While Loop can be thought of as a repeating If statement.

The For…Next statement is a looping structure that executes a set of statements a fixed number of times (until a counter reaches an ending value).

Example:For counter = start To end statementsNext counter

Pre-Test Loops ask the “do I do this loop” question before executing another trip through the loop. As program control reaches the top of a pre-test loop it tests a Do condition and if the answer is yes, the loop is executed. If the answer is no, control is passed to the next line after the bottom of the loop. The positioning of the question leads to the possibility that the loop might not ever be executed.

The syntax of a pre-test loop is:Initial value of loop variableWhile condition Body of the loop Update loop variableEnd

The loop control should have an initial value before the loop begins. The programmer must be aware of the value of the loop variable before the start of the loop, since it is possible that the loop might not be executed if the value does not meet the While condition. The While condition is actually an “I want to do this loop if this is true” condition. As long as the condition is true, the loop will be executed. When the program reaches the top of the loop, it tests the condition and, if the answer is true, the body of the loop is executed. Care must be given to the condition since a faulty condition can lead to an infinite loop or to the loop never being executed. As in the For-loop, the End statement marks the bottom of the loop and control is passed back to the top of the loop for testing the While condition.

One key difference between the For-loop and the pre-test and post test loops is the way the loop control variable is updated. In a For-loop, the value of the loop variable is automatically updated by the step parameter every time the loop reaches the bottom. In both the pre-test and post-test loop, the programmer must add a line of code that will change the value of the loop control variable. A counter can be used to accomplish this. Sometimes the loop variable is updated when the user enters a new value for the loop variable. It is important that this updating take place, because if the value of the loop variable is always the same then the While condition will always be the same and the loop will never terminate on its own.

54

Page 57: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Implementation

Virginia Standard COM.15 The student will implement loops, including iterative loops. Other topics will include single entry point, single exit point, preconditions, and post-conditions.

Teacher Notes and Elaborations (continued)Post-test loops are similar to the pre-test loops in that the loop variable must be initialized before the loop begins and must be updated within the body of the loop. There are two main differences between the loops. The first is the position of the decision about recycling through another iteration of the loop. In a post-test loop the question is asked after the body of the loop has been executed instead of before as in the pre-test loop. The second is in the way the “do it again” condition is written. In a pre-test (While) loop, the condition is a continuing condition (Keep doing this loop While …). It is written so that if the result of the condition is true the loop recycles. In a post-test loop (Repeat), the condition is an exit condition (Repeat this loop until …). The positioning of the recycle condition in the post-test loop guarantees that the loop will be executed at least one time.

Syntax for a post-test loopInitialize the loop variableRepeat condition Body of loop Update the value of the loop variableEnd

In a post-test loop, the loop control variable should have a starting value. This is usually done by an assignment statement or by inputting a value for the loop control variable. The Repeat condition is placed at the top of the loop even though the condition is not checked until the end of the loop. The condition is a Boolean statement that is evaluated as true or false. The condition is thought of as an exit condition. When the condition is true, program execution exits the loop. The Body of the loop is whatever the program needs to do at least once. Somewhere in the Body of the loop, the value of the loop control variable must be updated or the loop will go on forever. This updating can be done by calculating a new value for the loop control variable using a counter or the loop control variable could get a new value from the user by using a prompt or input statement or a combination of both methods. In any case, the variable’s value must be changed if the loop is to terminate on its own. The End statement marks the bottom of the loop and evaluates the exit condition to decide if control is passed back up to the top of the loop at the Repeat statement if the condition is false, or on to the rest of the program if the condition is true.

One common use of Repeat loops is to guarantee valid user input. Often if the values supplied from the keyboard are not within a legitimate range, the program will “bomb” or yield ridiculous results. With good use of loops, the program can keep asking the user for a value until he/she gives one in an acceptable range. For example, if the user is asked for a non-zero number, but a 0 is entered anyway, the program evaluates the exit condition of a non-zero value and since it is false the loop recycles and asks for another number. Once a valid number is entered, the exit condition is true and the program continues.

Each of the three types of loops has strengths and weaknesses. Choosing the best loop for a particular job is an important skill. In most applications it is possible to use any of the three. However, select the wrong one and it is often necessary to add extra lines of code to compensate for the more inefficient selection. The first rule of thumb is “If you can use a For loop, use it”. For loops are easy to set up and control. If it is possible to know the starting value and the ending value of a loop control variable or if one knows how many times a loop is to be executed, then use a For loop.

55

Page 58: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

(continued)

Curriculum Information Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Implementation

Virginia Standard COM.15 The student will implement loops, including iterative loops. Other topics will include single entry point, single exit point, preconditions, and post-conditions.

Teacher Notes and Elaborations (continued)When the number of iterations a loop will need is not known, then it is necessary to use a While loop or a Repeat loop. The difference between the two loops is, for the most part, personal preference. Both types of loops can be made to do most jobs. A good-programming exercise is for students to convert While loops to Repeat loops and vice-versa.

Repeat loops are better when error-trapping user input, since the loop is guaranteed to be executed at least once and, if the input is valid, the user never knows they are in a loop. While loops are better in a situation where the loop might not need to be executed at all (e.g., In a credit card program the interest is calculated, payment received, and the new balance is calculated only while the balance is greater than zero).

Nested loops statements are one or more statements within a statement. A loop within a loop. Nested loops can be used, for instance, to print a two-dimensional table or print the average mark on several exams.

An infinite loop can be the result of errors in logic. This loop continues forever and can usually be interrupted by pressing Ctrl+Break. To avoid an infinite loop the program construction must insure the condition of the loop will evaluate to False sometime.

56

Page 59: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Implementation

Virginia Standard COM.15

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Have students pick a number and assign it to a variable (not X). Have the program double the number five times and print the final results.

Give students an example of a While loop. Students should discuss what the program will do. Change the parameters and ask students what happens. After students have an understanding of what the output should look like, move to writing While loops to meet specific problems such as print the numbers from 10 to 20 by 3”s. Progress to more complicated problems such as print out the multiples of 7 less than or equal to 50 and count backward from 100 by 10’s until you get to 0.

Give students a set of exercises with loops. Students should convert loops of one type to the other two types. This will add to the understanding of the four parts of each loop (a starting value, an exit condition, a method of updating, and the body of the loop).

Use the formulas on the back of a bank statement to balance a checkbook. 1. Write a program that will ask the user to enter all outstanding deposits and calculate

their total. It is not necessary to remember individual deposits, just the total. Since the number of deposits will vary, a While or Repeat loop must be used. Explain that an outstanding deposit is one that is entered in the checkbook, but does not appear on the bank statement.

2. Write a program that will do the same thing for the outstanding checks.3. Write a program that will first ask the user for the bank balance shown on the bank

statement. Then it will call the program to enter and total the outstanding deposits. Emphasize the term call, which means that one program is sending control to another program. Then it will call the program to enter and total the outstanding checks. Finally, it will calculate the current checkbook balance using the formula: bank balance +outstanding deposits-outstanding checks = checkbook balance.

Compute the maximum recommended monthly mortgage payment using the generally accepted guideline that the payment should not exceed 28% of income. A second guideline states a mortgage payment combined with any other dept payments should not exceed 36% of income. Example: Using the two guidelines, what is the maximum recommended monthly payment for a family earning $30,000 per year with a car payment of $150 per month? Calculate the average of the two methods.

Compute the number of gallons of paint needed to paint a room when given the dimensions of the room. Example: Compute the cost of the paint given the cost per gallon. If paint costs $25 per gallon and each gallon covers 400 square feet, how many gallons of paint must be purchased and what would the total cost be to paint a room that is 25 feet by 40 feet with 9 foot ceilings? (Remind students that partial cans of paint may not be purchased.)

Compute the volume of solids to determine their capacity to hold various substances.

57

Page 60: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSExample: What is the volume of a can that is 5 inches high with a diameter of 3 inches. What is the circumference of the base?

(continued)

Curriculum Information Sample Instructional Strategies and Activities(continued)

TopicProgram Implementation

Virginia Standard COM.15

Compute the cost of materials to make various objects (spheres, cylinders, et cetera) when given the required data and the cost of one square init of the material used to construct the object. If the material to make the can in the preceding example cost $1.25 per square foot, calculate the material cost for one can.

According to statistics, a high school graduate makes 42% more than a drop-out. If a person is offered a job at $8.50/hour for 40 hours a week if they will drop out of school, how much more money would they make in a year if they stayed in school and graduated? How much more would they make in their lifetime if they stayed in school rather than drop out? Are the results significantly different if you allow for the possibility that the drop-out may have worked 2 or 3 more years than the graduate since the drop-out started working earlier?

Compound Interest Project: Input the principal, interest rate, time in years, and the number of times interest is compounded annually. Validate that the input values are all positive. Calculate and print the period number, the interest earned for the period, and the ending balance. A proposed strategy is to use the following variables: P-principal, R-interest rate, C-number of times interest is compounded annually, T-time in years, I-interest earned, B-ending balance, N-number of periods. Initialize the ending balance. Use a For loop to count N from 1 to C*T. Each time through the loop, calculate the interest and the ending balance. Print N, I, and B on the screen. Make sure that the output is labeled so a user who is not familiar with the program can understand it. Notice how the program formats the period number as a fixed decimal to 0 places and then formats the interest and balance to 2 places. Use the Pause command after each pass through the loop, otherwise the user would only have a chance to view the final period. Ask the students to explain why the interest increases each time it is calculated. How does compound interest compare to the simple interest project. Test Data might include: Input R = 10000, I = 5, C = 4, T = 3. The output ending balance after 12 periods is 11,607.55. The user should inputs their name to make the program more user friendly. Students should debug the program testing to be sure the values entered are valid.

Ohm’s Law Problem: where E is the force in volts, I is the current in amperes, and R is the resistance in ohms. Write a program with a menu of the following options:1. Find volts2. Find amperes3. Find Ohms4. QuitThe choice should be validated to insure it is between 1 and 4.

The first choice will calculate the volts given the amps and ohms. Remember to validate input. The second choice will calculate and the display the amps given the volts and ohms. This will require the student to solve Ohm’s Law for I. The third choice will calculate and display the amps given the volts and ohms. This will require the student to solve Ohm’s Law fro R. Have students investigate Ohm’s Law and determine who might use it and under what circumstances would it be applied.

Miles Per Gallon: Write a program that will ask the user for their name, the number of miles driven and the number of gallons of gas. Validate that the miles and gallons are positive. Calculate the miles per gallon for this tank of gas. The output will refer to the user by name and display the calculated miles per gallon to a desired accuracy (for example, one decimal place). Once this is working, modify the program to continue to ask the user for data on more tanks of gas until the user enters a predetermined code to quit. For each tank of gas the program will calculate the miles per gallon. Once the user indicated the desire to quit, the program will calculate and display the cumulative miles, gallons, and miles per gallon for all tanks of gas combined.

58

Page 61: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

(continued)

Curriculum Information Sample Instructional Strategies and Activities(continued)

TopicProgram Implementation

Virginia Standard COM.15

Mixture: Given the quantity of a mixture, the existing percentage of one ingredient in the mixture, and the desired percentage of the ingredient in the mixture, the program will determine how much of the ingredient must be added to increase its strength to the desired level or how much inert ingredient must be added to dilute the strength to the desired level. This could involve getting the correct percentage of antifreeze in a radiator, the percentage of active ingredient in a medicine, the percentage of salt or acid in a solution, or the percentage of walnuts in mixed nuts. For example:

ENTER QTY 15CURRENT PERCENT 32DESIRED PERCENT 45QUANTITIY OF PURE INGRED TO ADD IS 3.5

What is the worst grade I can get and still pass? Given four test scores and the minimum desired average, determine the lowest test score allowed to achieve the desired average. If it is not possible, print “NOT POSSIBLE” on the screen. Example:

ENTER TEST 1 85ENTER TEST 2 77ENTER TEST 3 91ENTER TEST 4; 89DESIRED AVERAGE 89YOU NEED A 111NOT POSSIBLE

If the desired average had been 86, the output would have been 96.

59

Page 62: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

60

Page 63: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

This page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

61

Page 64: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Implementation

Virginia Standard COM.16 The student will select and implement appropriate data structures, including arrays (one-dimensional and/or multidimensional), files, and records. Implementation will include creating the data structure, putting information into the structure, and retrieving information from the structure.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Declare a one-dimensional or two-

dimensional array for a given problem. Choose an appropriate component type

for an array. Assign a value to an array component. Fill an array with data, and process the

data in the array. Access a particular component of a

two-dimensional array. Process a two-dimensional array by

rows and by columns. Retrieve data from an array.

Key Vocabularyarrayfileindexrecord

Essential Questions When is it appropriate to use an array?

Essential Understandings Structured data types are collections of components that are given a single name and

whose organization is characterized by the method used to access the individual components.

Multidimensional arrays may be viewed as arrays of one-dimensional arrays.

Teacher Notes and ElaborationsA variable array stores a set of variables that each have the same name and are all of the same type. Each variable of an array is called a member or element, and is identified by a number called an index. An index is the numeric value used to access a particular array element. Generally, indexing begins with 0 unless specified otherwise.

An array is declared with a Dim Private, or Static statement that includes the identifier followed by the upper bound of the array and then the data type. When an array is declared, its variables are initialized. Numeric array elements are initialized to 0, string array elements to empty strings, and Boolean array elements to FALSE values.

A matrix is a multidimensional variable array that is used to store related information. Just as one-dimensional arrays can have meaningful indices for representing data, a two-dimensional array can be used to represent data that relates to a grid.

A file is a collection of related data stored on a hard disk, a CD, a diskette or flash drive. Applications usually require access to one or more files. A sequential access file contains only plain text and is accessed one character at a time. A file must be opened before it can be accessed.

A record is a set of fields where each field is one piece of data. Records can be read from a file sequentially within the Input # statement.

Curriculum Information Resources Sample Instructional Strategies and Activities

62

Page 65: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicProgram Implementation

Virginia Standard COM.16

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

What is the worst grade I can get and still pass? Given four test scores and the minimum desired average, determine the lowest test score allowed to achieve the desired average. If it is not possible, print “NOT POSSIBLE” on the screen. Example:

ENTER TEST 1 85ENTER TEST 2 77ENTER TEST 3 91ENTER TEST 4; 89DESIRED AVERAGE 89YOU NEED A 111NOT POSSIBLE

If the desired average had been 86, the output would have been 96. Students should be encouraged to store this data in an array.

63

Page 66: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Knowledge and Skills

Key VocabularyEssential Questions and Understandings

Teacher Notes and ElaborationsTopicProgram Design

Virginia Standard COM.17 The student will implement pre-existing algorithms, including sort routines, search routines, and simple animation routines.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Implement pre-existing algorithms into

a program. Implement a sort routine on a one-

dimensional array. Implement a sequential search routine

on a one-dimensional array. Implement a binary search routine on a

one-dimensional array. Implement a simple animation routine.

Key Vocabularyanimationbinary searchinsertion sortselection sortsequential searchsortbubble sort

Essential Questions What are sort routines and how do they work? What are sequential search routines and how do they work? What are binary search routines and how do they work? What is the difference between a sequential search routine and a binary search routine?

Essential Understandings Arranging values into an order is known as sorting. A sequential search algorithm starts at the beginning of a list and examines each data

value in sequence. Implementation of animation routines will differ depending upon the programming

language used.

Teacher Notes and ElaborationsA sort is a program module that puts items in a designated order, either from low to high or high to low. One measure of efficiency with sorting algorithms is the time it takes the implemented algorithm to sort a list of items.

A linear search or sequential search is a method for finding a particular value in a list that consists of checking every one of its elements, one at a time in sequence until the desired one is found. Linear search is the simplest search algorithm.

A bubble sort is a basic sorting algorithm that starts at the first element of a list of items and proceeds sequentially to the last, comparing each element with the next. If the first item is greater than the second, they are swapped. Then the second item is swapped with the third, if necessary, and so on until the end of the list is reached.

A selection sort starts by finding the lowest item in a list and swapping it with the first. Next, the lowest item among items 2 through the last is found and swapped with item 2, and then the lowest item among items 3 through the last is swapped with item 3. This process continues until the last item is reached at which point all items will be sorted.

An insertion sort starts by removing the second item of a list and shifting the first item up, if necessary, to position the removed element as the lowest in the list so far. The third item is then removed and previous items shifted up until the item can be placed in the appropriate position relative to the first two items. This process is repeated for the remaining items.

(continued)

64

Page 67: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSCurriculum Information Essential Questions and Understandings

Teacher Notes and ElaborationsTopicProgram Design

Virginia Standard COM.17 The student will implement pre-existing algorithms, including sort routines, search routines, and simple animation routines.

Teacher Notes and Elaborations (continued)A binary search is an algorithm for locating the position of an element in a sorted list. It checks the middle element of the sorted list and compares it to determine if it is equal to the search value. If it is equal then the position has been found. If not, then the upper half or lower half is chosen for further searching based on whether the search value is greater or less than the middle element. This is the same procedure used to search for a word in the dictionary.

Animation is the rapid display of a sequence of images of 2-D or 3-D artwork or model positions in order to create an illusion of movement. It is an optical illusion of motion due to the phenomenon of persistence of vision, and can be created and demonstrated in a number of ways. The most common method of presenting animation is as a motion picture or video program, although several other forms of presenting animation also exist. A timer object can be used to include simple animation in an application.

65

Page 68: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Design

Virginia Standard COM.17

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Give two students a dictionary and ask them to look up a word. Have the remaining students describe their actions. (Students could also make a flow-chart of the actions.) This is the same process that is done when a binary search is implemented.

Names: Write a program that will input a list of names in a class. Validate this input as being string variables. The list of names should be sorted alphabetically and printed out as a sorted list. The program will prompt the user to enter a name. The program will search the list for the entered name.

66

Page 69: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

67

Page 70: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSThis page is intentionally left blank.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Testing

Virginia Standard COM.18 The student will test a program, using an appropriate set of data. The set of test data should be appropriate and complete for the type of program being tested.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Test a program, using an appropriate

and complete set of data.

Key Vocabularybugsprogram testing

Essential Questions Why is running a program test important? How does a program test reveal “bugs”? What is test data and how does the programmer determine what test data to use?

Essential Understandings A program test can reveal problems (bugs) in the program. Testing a program for bugs is part of problem solving. Various forms of data can be used to debug a program.

Teacher Notes and ElaborationsProgram testing is the process of running the program and entering a set of data to test different possibilities to reveal any bugs (errors). This is probably the most neglected phase of the programming process. At program turn-in time, the student should enter teacher-selected data with known results. If the program does not perform as it should, the program should not be accepted. As the programs increase in complexity, be sure to test the “special cases” that produce invalid results. Several sets of test data should be supplied to the students that illustrate “potholes” in the algorithm. Students should develop their own sets of test data and record them as part of the program documentation.

When a program is designed, it is important that students identify the type of data that is required in the program specifications.

68

Page 71: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Testing

Virginia Standard COM.18

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Write a program to determine which is a better buy: Mulch by the scoop at $22 per cubic yard and a delivery fee of $25 or buy bags of mulch that cost $2.75 for 2 cubic feet with no delivery charge. What is the break-even point between these two options? Students should describe the pre-conditions, post-conditions, desired output, and test data. The tasks to be performed should be written in pseudo code and translated into a flowchart. Input can be obtained by assignment statements or by input statements with prompts. Input should be verified when possible and stored in the appropriate variable type. The data should be processed using formulas and conditional types and results displayed in user friendly form.

Compound Interest Problem-Input the principal, interest rate, time in years and the number of times interest is compounded annually. Validate that the input values are all positive. Calculate and print the period number, the interest earned for the period, the ending balance. This period number refers to the block of time that corresponds with the number of times the interest will be compounded. For example, if interest in compounded quarterly for five, years, there will be four periods per year for a total of 20 periods that we will number from 1 to 20. Keep repeating this until the user enters data indicating they want to quit the program. Use a For loop to count N (Number of periods) from 1 to C*T (number of periods is Compounded annually times Time in years). Each time through the loop calculate the Interest earned and the ending balance. Print the number of periods, the interest and the balance on the screen. Pause after each pass through the loop.

Calculate the ending balance using the formula , where A is the ending

balance, P is the principal, r is the interest rate, n is the number of times compounded annually, and t is the time in years. Does this program yield the same result as the previous compound interest program? What are the advantages and disadvantages of each method?

V6 or V4 cylinders? – Calculate the additional cost of gas for a V6 engine versus a V4-cylinder engine over 100,000 miles. Have the students estimate or do research to determine the miles per gallon for each option on a particular car model. The program will need to input this data as well as the cost of one gallon of gas. Have them research how much more the V6 engine costs to buy initially? Is it worth it? Why?

69

Page 72: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

TopicProgram Testing

Virginia Standard COM.19 The student will debug a program, using appropriate techniques (e.g., appropriately placed controlled breaks, the printing of intermediate results, and other debugging tools available in the programming environment), and identify the difference between syntax errors and logic errors.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Debug a program, using controlled

breaks, the printing of intermediate results, and other debugging tools.

Identify the differences among syntax errors, runtime errors, and logic errors.

Key Vocabularycontrolled breakdebuglogic errorsyntax errorruntimeruntime error

Essential Questions How do using controlled breaks help to debug a program? How does using the printing of intermediate results help to debug a program? What are the differences among syntax errors, runtime errors, and logic errors?

Essential Understandings Debugging a program is problem solving.

Teacher Notes and ElaborationsA controlled break is a method that can be used to determine the value of a variable before its use in a decision control structure or other related control structures.

To debug a program is the process of getting the program to run correctly. An example is that Visual Basic has a tool, the immediate results window, which displays the output of the Debug.Print statement that can be included in the program code. Other languages have similar tools that can be used to determine the immediate value of variables.

Runtime is the time during which the application is being executed.

A logic error is caused by statements that are syntactically correct but produce undesired or unexpected results. Unlike syntax errors, logic errors must be found by the programmer rather than by the software application. These errors can be found only by thorough testing of the application and by careful reading of the program code.

A syntax error is a statement that violates the rules of the program language. For example this will occur if an assignment is illegal in a variable declaration. Some errors are detected immediately at design time of the program development. Other syntax errors may not be detected until the application is run or compiled, at which time a runtime error is generated and a message is displayed describing the error. This will stop the program execution. Compilation errors refer to a state when a compiler fails to compile a piece of computer program source code, either due to errors from the compiler itself, or syntax errors in the code. A compilation error message often helps programmers debugging the source code for possible syntax errors.

70

Page 73: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

Curriculum Information Resources Sample Instructional Strategies and Activities

TopicProgram Testing

Virginia Standard COM.19

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Vertical Distance: Use this formula where y is the vertical distance of an object after t seconds with an initial velocity of v0 . Offer a menu of the following choices:

Find heightFind velocityFind timeTime to groundFind maximumQuit

- The program should validate the input to insure that it is a number between 1 and 6. Once the selected menu item has been executed, the user will be asked to make another choice. This will continue until they select choice 6) Quit.

- The first choice will calculate and display the height of an object at a given elapsed time and initial velocity. The elapsed time and initial velocity should be validated to insure they are positive numbers. Example: How high will an object be after 1.5 seconds if it had an initial velocity of 90 feet per second?

- The second choice will calculate the initial velocity given the height of an object and an elapsed time. Again the input should be validated to insure they are positive. Example: What was the initial velocity of an object that is 225 feet above the ground after 4.5 seconds?

- The third choice will calculate and display the elapsed time it will take an object to achieve a given height with a given initial velocity. Validate the input to insure they are positive. Example: How long will it take a ball thrown at 90 feet per second to be 150 feet above the ground? Note that your program should be made to give both times this will happen, on the up and on the way down.

- The fourth choice is similar to the third choice except that the height will be zero. We should not include t = 0 as a solution because we know that the object is on the ground at the beginning. We want to determine the elapsed time until it hits the ground after its flight.

- The fifth choice will calculate and display the maximum height achieved by the object given its initial velocity which must be a positive number. Example: How high will the baseball get if thrown at an initial velocity of 100 feet per second? Proposed strategy- Use a For loop starting at t = 0. The ending value of t can be determined by sending the control to the section of the program for choice 4 which determines how long it would take the object to hit the ground. Another

71

Page 74: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSoption would be to continue this process until y = 0. The loop would increment by 0.1 second, unless you prefer more accuracy. Create a memory location, m that will keep tract of the height value of y calculated during the loop using an If statement similar to “If y > m then y = m” and display this value, m, on the screen as the maximum height.

Curriculum Information Essential Knowledge and SkillsKey Vocabulary

Essential Questions and UnderstandingsTeacher Notes and Elaborations

72

Page 75: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLSTopicProgram Testing

Virginia Standard COM.20 The student will design, write, test, debug, and document a complete structured program that requires the synthesis of many of the concepts contained in previous standards.

The student will use problem solving, mathematical communication, mathematical reasoning, connections and representations to: Design, write, test, debug, and

document a complete structured program.

Key Vocabularystructured program

Essential Questions What are the steps required to write a complete structured program successfully?

Essential Understandings The successful completion of a structured program requires problem-solving skills.

Teacher Notes and ElaborationsThe final steps in writing a complete structured program require synthesis of the concepts acquired in the computer math course. This requires “putting it all together”.

The complete structured program requires that students use all aspects of programming that have been used in this course. Appropriate use of flow charting, pseudo code, program design, writing the program, using appropriate subroutines, sorts, animation...etc. to efficiently solve the problem.

The program will be tested using appropriate test data and will be rewritten until it is “bug” free.

All programs include documentation and comments to help the programmer identify bugs and clarify code.

A structured program generally includes the following.- Determining the goal of the program- Determining what is required to run the program- What information will the user supply at run time?- Using a flow chart- Developing a design for the program- Implementing the plan and writing the program- Testing the results- Debugging the program - Evaluating the program

Curriculum Information Resources Sample Instructional Strategies and Activities

73

Page 76: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS

TopicProgram Testing

Virginia Standard COM.20

PWC Mathematics websitehttp://pwcs.math.schoolfusion.us/

Virginia Department of Education website http://www.doe.virginia.gov/instruction/mathematics/index.shtml

Surveying- The student will design, write, test, debug, and document a complete structured program for a surveying project. A surveyor starts at one corner of a piece of property and measures the length of each side and measure of each angle. If the survey is done correctly, the property line will return to the starting point. To check the angles that are measured, the programmer must write a program that will ask the user to enter the measures of the angles. Since it cannot be assumed that all the angles of the property line are the same, each one must be entered separately The program must calculate the sum of the angles measured by the surveyor, calculate the sum of the measures of the interior angles of the polygon using the formula , and calculate the difference between the two (the error). If the error is within a tolerance, tell them “GOOD JOB”, otherwise tell them they must do the job again. As the values are being entered, the program should keep a running total of the angles and keep a count of how many angles have been entered. To signal the end of the list of angles, the user could type in a value that is unrealistic, like -1 or 0.

Income Taxes: The 2002 Federal Tax Rate Schedule for an individual whose filing status is single is as follows:

If taxable income is Over

But not Over

Tax is Of the amount Over

$0 $6,000 ………….10% $06,000 27,950 $600.00 + 15% 6,00027,950 67,700 3,892.50 + 27% 27,95067,700 141,250 14,625.00 +

30%67,700

141,250 307,050 36,690.00 + 35%

141,250

307,050 ………. 94,720.00 + 38.6%

307,050

Write a program that will input the taxable income from the user, then calculate and display the amount of the Federal Income Tax. Students should research the current Federal Tax Rate Schedule to use current figures. Compare and contrast this graduated tax with the taxes that are a fixed percentage, such as the sales tax or real estate tax, and those that are a fixed amount, such as automobile registration fees.

(continued)

Curriculum Information Sample Instructional Strategies and Activities74

Page 77: GRADE 6 CURRICULUM GUIDE (Revised 2010) · Web viewProgramming languages include Visual Basic an object ... An algorithm created using both English and ... COMPUTER MATHEMATICS CURRICULUM

COMPUTER MATHEMATICS CURRICULUM GUIDE (Revised 2010) PRINCE WILLIAM COUNTY SCHOOLS(continued)

TopicProgram Testing

Virginia Standard COM.20

Federal Taxable Income: Write a program that will input the total of the individual’s wages, salaries, tips, and interest. Ask the individual if their parents will claim them on their return. (If parents provided most of their financial support, they probably will claim them). The program will calculate and display the individual’s exemptions, the individual’s standard deduction, and the individual’s taxable income. In 2002, the exemption policy for the 1040EZ stated that a single individual not claimed by their parents was entitled to an exemption of $3000, and a standard deduction of $4700. Assume the individual is single. A possible modification of this program would be to include the filing status. Individuals that are claimed by their parents do not get an exemption ($0) and the following is used to determine their standard deduction:A. Add $250 to the total wages, salaries, tips, and interest ______B. The minimum standard deduction is $750 $750C. Enter the largest of line A or line B ______D. Maximum standard deduction $4,700 $4,700E. Enter the smaller of line C or D. This is your standard deduction ______To determine the taxable income:Total income – exemptions – standard deduction = taxable income

Once this is written and tested, modify these two programs so they combine to calculate the taxable income and the income tax.

Standard Deduction or Itemize?- Use the Federal Schedule A—Itemized Deductions to determine if the taxpayer should itemize deductions or claim the standard deduction. The program will need to input the taxpayer’s gross income (Not taxable income), total medical expenses, other taxes (such as state income tax, real estate tax, property tax), interest on a mortgage, gifts to charity, losses due to casualty or theft, and job expenses.

In 2002, the following guidelines were used to calculate the total itemized deductions:1. Medical expenses- Only the amount of medical expense that exceeds 7.5% of the taxpayer’s gross income can be deducted.2. Taxes-State income tax, real estate tax, and property tax can be deducted.3. Interest-Only interest on a mortgage (home loan) can be deducted. Interest on credit cards or car loans cannot be deducted.4. Gifts to Charity-Any gift to a recognized charity can be deducted 5. Casualty and Theft Losses-Losses from theft or casualty are deductible.6. Job Expenses and Misc.-Unreimbursed employee expenses, tax preparation fees and safe deposit box rental are deductible.Total all these deductible expenses. If they are greater than the taxpayer’s standard deduction (currently $4,700), it would benefit the taxpayer to itemize deductions. If the deductions are less than the standard deduction, they should claim the standard deduction.

Once this program works, incorporate it with the other two so the combination will determine whether to itemize deductions or claim the standard deduction, calculate the taxable income, and calculate the income tax.

75