|
Array Concepts
| |
Examining Data Structures
| Unit 4 |
Activity
1 |
Time:
160
minutes
|
Description
Students
identify the programming techniques (i.e., storage of data in lists and tables,
sorting and searching data) that are necessary to program a database. This
allows students to write programs that efficiently store and manipulate larger
amounts of data than the programs developed in previous units. Array concepts,
including element value, index, and bounds, are explored using models. They
examine written examples of programs illustrating basic application of a
variable array. Students develop thinking skills through analysing programs
using variable arrays to input, process, and output data (e.g., class set of
marks).
Strand(s) & Learning
Expectations
Strand(s):
A. Programming Concepts
and Skills
B. Software Development
C. Computer Environments and Systems
D. Topics
in Computer Science
|
Overall Expectations
|
| A1. |
demonstrate the ability to use different data types, including
one-dimensional arrays, in computer programs; |
| A2. |
demonstrate the ability to use control structures and simple
algorithms in computer programs; |
| A4. |
use proper code maintenance techniques and conventions when creating
computer programs. |
| B2. |
design software solutions to meet a variety of challenges; |
| C3. |
demonstrate an understanding of the software development process. |
|
Specific Expectations
|
| A1.1 |
use constants and variables, including integers, floating
points, strings, and Boolean values, correctly in computer
programs; |
| A1.3 |
use assignment statements correctly with both arithmetic and
string expressions in computer programs; |
| A1.4 |
demonstrate the ability to use Boolean operators (e.g., AND,
OR, NOT), comparison operators (i.e., equal to, not equal to,
greater than, less than, greater than or equal to, less than or
equal to), arithmetic operators (e.g., addition, subtraction,
multiplication, division, exponentiation, parentheses), and
order of operations correctly in computer programs; |
| A1.5 |
describe the structure of one-dimensional arrays and related
concepts, including elements, indexes, and bounds; |
| A1.6 |
write programs that declare, initialize, modify, and access
one-dimensional arrays. |
| A4.1 |
demonstrate the ability to identify and correct syntax,
logic, and run-time errors in computer programs; |
| A4.2 |
use workplace and professional conventions (e.g., naming,
indenting, commenting) correctly to write programs and internal
documentation; |
| A4.3 |
demonstrate the ability to interpret error messages
displayed by programming tools (e.g., compiler, debugging tool),
at different times during the software development process
(e.g., writing, compilation, testing); |
| A4.4 |
use a tracing technique to understand program flow and to
identify and correct logic and run-time errors in computer
programs; |
| A4.5 |
demonstrate the ability to validate a program using a full
range of test cases. |
| B2.1 |
design programs from a program template or skeleton (e.g.,
teacher-supplied skeleton, Help facility code snippet); |
| C3.1 |
demonstrate an understanding of an integrated software
development environment and its main components (e.g., source
code editor, compiler, debugger); |
| C3.2 |
work independently, using support documentation (e.g., IDE
Help, tutorials, websites, user manuals), to design and write
functioning computer programs; |
Prior Knowledge &
Skills
Students:
-
understand
how data is stored in string and numeric variables (Unit 2);
-
can
use an operating system to perform tasks such as managing files;
-
can
use built-in networking functions such as shared files and input/output
devices;
-
are
able to implement a comprehensive backup strategy for files.
Planning Notes
-
Review
basic syntax (Appendix 4.1.1) of one-dimensional array structures for specific language used.
-
Prepare
notes to illustrate basic structures of declaring arrays, totalling array
elements, inputting data from the keyboard or data file, and outputting
results to the screen.
-
Prepare
demonstrations using models (e.g., on chalkboard, paper and pencil, deck of
cards), giving students visual representations of data storage and
manipulation in arrays.
Teaching/Learning
Strategies
The teacher:
-
presents
visual representations of array structures using models such as a set of
numbered envelopes, each containing a word or number;
-
assists
students in identifying examples of data that can be represented using an
array (e.g., names of motel room occupants or post office box holders);
-
defines
basic structure of a one-dimensional array;
-
clarifies
differences between the index (0, 1,…10) and the value of an array
element;
-
demonstrates,
through the development of the code for a simple program, the control
structures necessary to store data in an array.
Students:
-
in
groups of four, brainstorm a description of the data that would be part of a
database of a sports team in the school and the programming techniques
required (e.g., representing a table of data, sorting data, and searching
for matching data), which forms the culminating challenge for this unit;
-
manipulate
visual models, illustrating storage of data in one-dimensional arrays;
-
in
pairs, summarize concepts of arrays in their own words and apply the
concepts by identifying additional examples of data that can be represented
using an array;
-
develop,
using pencil and paper, the code for a simple program (e.g., storing and
displaying the list of classes that they are currently taking).
Assessment & Evaluation of Student Learning
As Learning
Students will be given time to:
- reflect on their progress/
understanding/areas of concern
based on teacher/student/peer
suggestions (e.g. after test take up)
- journalize their reflections
- reflect on the work of others
For Learning
The teacher will
- observe student progress/performance
- ask questions based on student work
- check homework correctness/completion when appropriate
- review formative quiz results
Of LearningEvidence
of student achievement of the concepts of one-dimensional variable array
structures is assessed at the completion of Activity 2. At that time, students
have applied the concepts in the development of programs requiring the use of
one-dimensional arrays.
Accommodations
The
following are ways in which the activity can be adapted to accommodate the
student’s needs:
-
teachers
should consult the OSR, IEP, Guidance, and Special Education staff with
respect to student exceptionalities;
-
provide
print copies of on-line and print resources to individual students as
appropriate;
-
provide
support through one-to-one teacher-directed conferencing to ensure
understanding.
Resources
-
Hume,
J.N.P. Problem Solving and Programming
in Turbo Pascal. Toronto: Holt Software Associates Inc., 1994. ISBN
0-921598-19-X
-
Hume,
J.N.P. Problem Solving and Programming
in Turing. Toronto: Holt Software Associates Inc., 1993. ISBN
0-921598-16-5
-
Wright,
Peter. Peter Wright’s Beginning
Visual Basic 6.0. Birmingham, UK: Wrox Press, 1998. ISBN 1-861001-05-3
Source:
Public
and
Catholic
District School Board Writing
Partnership,
Course
Profile: Computer
and Information Science,
Grade 11, University/College
Preparation ICS3U,
Queen’s Printer for Ontario, 2001, adapted.
|