Scheme of work Cambridge International AS & A Level Computing (9691)
|
|
- Victoria Gordon
- 5 years ago
- Views:
Transcription
1 Scheme of work Cambridge International AS & A Level Computing (9691) Unit 2: Practical programming techniques Recommended prior knowledge Students beginning this course are not expected to have studied Computing or ICT. Context This unit should be completed before Unit 3 is started. Outline This unit provides students with an understanding of the techniques required for programming through a study of the following topics: designing solutions to problems the structure of procedural programs data types and data structures common facilities of procedural programs writing maintainable programs testing and running a solution Syllabus ref Learning objectives Suggested teaching activities Learning resources 2.1 Designing solutions to problems Content: Design of the input, output and interface Use of structure diagrams to describe the modular nature of a solution Use of program flowcharts and pseudocode to describe the steps of an algorithm (a) discuss the importance of good interface design Recap on user interfaces and appropriateness of usage by different users (1.2 (d)). The web link resource gives some pointers for discussion on page 120 page 108 v1 2Y05 Cambridge International AS & A Level Computing (9691) 1
2 (b) design and document data capture forms, screen layouts, report layouts or other forms of input and output (e.g. sound) for a given problem (c) explain the benefits of designing a solution to a problem by splitting it up into smaller problems (top-down / modular design) interface design. Get students to make a summary of good points when designing an interface. Discuss the differences between data capture forms, screen forms and reports (nature of form, input or output, for viewing and/or filling, nature of application). Give students exercise to design forms, reports for a number of applications. Look at some of the solutions with students getting them to assess how good the designs are. Discuss other forms of input and output (see 1.8(d)) Discuss how to find the area of a 'house' made up from a square and a triangle by working out the area of the triangle, working out the area of the square and then adding the two together. Use this to explain what a top down approach is a large complex problem broken into smaller more manageable pieces. When each of the smaller problems has been solved then all the pieces are put together to give an overall solution. Introduce concept of modularity. Now discuss the problem of controlling a robotic production line. The problem is complex, but can be divided into smaller manageable pieces: how is the data going to be collected from sensors and stored in the system? what operations need to be processed and in what order? how is the decision going to be made about when to perform each operation? what outputs are necessary, and how are they controlled? More than one person or team of people can be engaged on solving different parts of the same problem at the same time. Therefore the problem can be solved more quickly. pages pages /3_3_7/programming/miniweb/pg2.htm T/L22Top-DownDesign.ppt v1 2Y05 Cambridge International AS & A Level Computing (9691) 2
3 Give a similar problem to four teams in the classroom. The problem is to design a new computerised traffic light system for (name a local set of highway traffic lights controlling a road junction). Identify the four areas to be addressed as discussed in the production line example. Give each group time to brainstorm a solution, put all solutions together and see if that fulfils the original task. In this instance it does not matter if the group's solutions work if not it is better to provoke discussion about definition of each group's task, what we asked them to do, what input they required and what output they were expected to give. This should develop the idea of modular notation (on input, process, on output) as used in standard programming techniques. (d) produce and describe top-down / modular designs using appropriate techniques, including structure diagrams, showing stepwise refinement (e) produce algorithms to solve problems using both a program flowchart and pseudocode (f) understand algorithms presented in the form of program flowcharts and pseudocode Show how a tree-like diagram can illustrate the stepwise refinement that is the outcome of a top-down approach. Discuss the need to capture repetition and selection in a structure diagram and how this can be achieved. Give the students some exercises to produce structure diagrams for simple problems. Show students some examples of program flowcharts and pseudocode. Do dry runs on the examples to show students (i) how to tackle dry runs and (ii) how to interpret flowcharts symbols and pseudocode vocabulary. Give students guidance on the symbols to be used in producing flowcharts and the words to be used in the pseudocode. Produce flowcharts and pseudocode for a number of simple problems. Give the students some further questions on dry running some algorithms and also some questions on producing their own flowcharts and pseudocode. Show model solutions to the questions. page Downloads/files/4039/11-DSR1.PPT pages burne/comp150/algorithms.htm page 119 v1 2Y05 Cambridge International AS & A Level Computing (9691) 3
4 2.2 The structure of procedural programs Content: Basic programming constructs/control structures Use of subprograms/subroutines, including procedures and functions Recursion a) define and correctly use the following terms as they apply to procedural programming: statement, subroutine, procedure, function, parameter, loop (b) identify the three basic programming constructs used to control the flow of execution: sequence, selection and iteration Give out a printed copy of a program which consists of a main routine (with a loop), a procedure and a function with a single parameter. Discuss briefly the terms statement, subroutine, procedure, function, parameter, and loop. Bring out the relationship and differences between subroutine, procedure and function. Produce the algorithm to make a cup of tea (or coffee). Remind students about how to draw flowcharts and ask them to attempt to draw a flowchart to show how to make a cup of tea. This will lead to discussions about selection, sequence and repetition. Examples Sequence Use from cup of tea: Add water to kettle Put kettle on heat source as example of sequence decisions/selection with Y/N solutions Use from cup of tea: Do you take sugar? Discuss framing the questions to always give Yes or No answers. Create a flowchart to illustrate these steps. Selection: IF..Then..Else constructs Use from cup of tea: pages pages page w v1 2Y05 Cambridge International AS & A Level Computing (9691) 4
5 Do you take sugar? If Yes then go to section which adds sugar to the cup, else If No go to the section for milk. Create a further flowchart for this section (perhaps as a module called Sugar). Iteration Use from cup of tea in the Sugar module: Add a little sugar Is this enough? If Yes return from the module If not go back to Add a little sugar Summarise that sequence, selection and iteration form the three basic programming constructs. (c) understand and use selection in pseudocode and a procedural programming language, including the use of IF statements and CASE/SELECT statements (d) understand and use iteration in pseudocode and a procedural programming language, including the use of countcontrolled loops (FOR-NEXT loops) and condition-controlled loops (WHILE- ENDWHILE and REPEAT-UNTIL loops) (e) understand and use nested selection and nested iteration statements Demonstrate use of IF and CASE statements using both pseudocode and programming language examples. Stress when is it appropriate to use each - although we can use the IF statement for very complex (nested) condition testing, the CASE statement usually makes it easier to read the code. Use examples to demonstrate the different types of iteration: number of iterations known initially (use of FOR-NEXT statements) and number of iterations not known initially (use of REPEAT-UNTIL or WHILE-ENDWHILE). Explain the need for WHILE-ENDWHILE (e.g. reading records from a file that might contain zero records). A number of exercises need to be developed here to reinforce these elements. Demonstrate using some examples (not too complex) nested selection and nested iteration. Ensure that the nested iterations contain a mixture of the alternative methods (e.g. FOR-NEXT inside REPEAT-UNTIL). pages w pages w pages v1 2Y05 Cambridge International AS & A Level Computing (9691) 5
6 (f) understand, create and use subroutines (procedures and functions), including the passing of parameters and the appropriate use of the return value of functions (g) use subroutines to modularise the solution to a problem (h) identify and use recursion to solve problems; show an understanding of the structure of a recursive subroutine, including the necessity of a stopping condition (i) trace the execution of a recursive subroutine Recap on procedures, functions and parameters. Explain call by value and call by reference. Include the underlying mechanisms (creation of local variable and value copied to it; two labels to the same item of data), effects (no change to original variable value in call by value whatever changes are made to local variable copy; any change to local variable in call by reference changes original variable value). Illustrate these ideas by running through some examples. Give students a few exercises. Run through solutions. Discuss how to handle returned values from functions. Function result must be stored, output, used in an expression, Show some examples of various ways in which function results are handled. Discuss how modularising a problem can be beneficial in both writing and maintaining the code. The modules would be either procedures or functions and would have self-contained tasks. Discuss nature of recursion: a subroutine that calls itself; to succeed it needs a stopping condition. Show some definitions that are suitable for solution by recursive algorithms. Discuss where in the algorithms the recursion occurs and also highlight and discuss the stopping conditions. Give students a couple of recursive subroutines and ask them to highlight the recursive calls and also the stopping conditions. Include some examples that do have recursive calls or stopping conditions omitted. Being able to trace successfully a recursive subroutine is very helpful in grasping recursion. Use a diagrammatic method of tracing which clearly shows: the recursive descent until the stopping condition is encountered; the return of values as the recursion unwinds. Factorial and Fibonacci are suitable examples to demonstrate. Give students some questions (include some nonmathematical examples e.g. printing a list of items). Check pages pages pages _%28computer_science%29 page ng,_programming,_operating_syste ms,_databases_and_networking/pro v1 2Y05 Cambridge International AS & A Level Computing (9691) 6
7 (j) discuss the relative merits of iterative and recursive solutions to the same problem their answers. Compare iterative and recursive algorithms for a couple of problems. Discuss size of solution, elegance of solution, runtime memory requirements and speed of execution with regard to the two alternative versions of a solution. gramming_concepts/recursive_tech niques pages Data types and data structures Content: Data types: integer, real, Boolean, character, string Data structures: arrays (one- and twodimensional), records Storing, retrieving and searching for data in files (a) define and use different data types e.g. integer, real, Boolean, character and string (b) define and use arrays (one- and twodimensional) for solving simple problems (this should include initialising arrays, reading data into arrays and performing a simple serial search on a one-dimensional array) Recap data types (1.3(a),(b),(c)). Explain the features of and difference between different data types. Identify suitable data for different functions. Explain which data types are suitable for different data. Explain relative storage sizes of different data types. Give students a worksheet to select the correct data types for different samples of data. Enhance this to include storage sizes. Marking these worksheets orally in class should provoke and stimulate discussion on different storage types and the relative merits of each for specific functions. Ensure that all data types listed are covered. Demonstrate the purpose of an array using an example. Explain the purpose and structure of one-dimensional arrays. Explain memory allocation, initialising arrays and reading data into arrays. Set worksheet exercises to practise setting up one- pages pages pages html v1 2Y05 Cambridge International AS & A Level Computing (9691) 7
8 dimensional arrays and reading data into these arrays. As a class activity or in small groups design and write routine/s to perform a simple serial search on an array. Use a further example to demonstrate the need for multidimensional arrays and give students similar exercises to work on one-dimensional arrays. Discuss the need for dimensioning arrays and demonstrate how to do this. (c) design and implement a record format (d) estimate the size of a file from its structure and the number of records (e) store, retrieve and search for data in files (f) use the facilities of a procedural language to perform file operations (opening, reading, writing, updating, inserting, appending and closing) on sequential files Recap on the relationship between files, records and fields (1.3(f)). Discuss the design of a record format based on a file storing details on students in the class. Show how this record structure would be implemented in a particular programming language. Demonstrate how to calculate from a pre-defined file structure an estimated file size given the number of records. Discuss how records in a sequential file can be stored by opening a file, writing a record and then closing the file. Discuss how a sequential file can be searched for a particular record and its contents output. Show how the algorithms produced in (e) can be implemented in a program that: opens a file initially and closes it at the end. Via a menu a user can choose to read a chosen record, update a chosen record, insert a new record and append a new record. Discuss the syntax of the file operation statements to clarify how they are achieved using the particular procedural language. It may be beneficial, if possible, to look at the file records before and after a number of operations have been carried out on the file. This should help students to understand more clearly the file operations that are carried out but also how the records are actually stored. pages page 148 pages pages file-handling-in-visual-basic-6- part-1-sequential-files/ v1 2Y05 Cambridge International AS & A Level Computing (9691) 8
9 2.4 Common facilities of procedural languages Content: Assignment statements Arithmetic, relational and Boolean operations String manipulation Input and output facilities (a) understand and use assignment statements (b) understand arithmetic operators including operators for integer division (+,, *, /, MOD and DIV) and use these to construct expressions (c) understand a range of relational operators, e.g. =, <, <=, >, >= and <> and use these to construct expressions (d) understand the Boolean operators AND, OR, and NOT and use these to construct expressions (e) understand the effects of the precedence of standard operators and the use of parentheses to alter the order of evaluation Discuss the nature of an assignment statement: an expression is evaluated and its result is assigned to a variable. All procedural languages will have facilities for performing the standard arithmetic operations on numbers. In addition MOD and DIV are (typically) integer operations. Show examples of MOD and DIV and follow up with some exercises. Discuss the set of relational operators for comparison of two entities that results in either true/false or 0/1 depending upon the programming language. Illustrate with a number of expressions. Recap on association with selection statements (2.2.(c)). Discuss / remind students about the Boolean operators AND, OR and NOT and their actions as expressed in truth tables. Show some examples of expressions using these operators. Show students some examples of expressions where precedence has an effect e.g. 2+3*4. Discuss the concept of precedence and the use of parentheses to change the order in which operations are carried out. Work through a couple of examples (of increasing complexity) to demonstrate precedence and parentheses in action. Give students some examples to work through. Run through their solutions. page 161 page 155 page l_basic_arithmetic pages page 156 pages l_basic_arithmetic v1 2Y05 Cambridge International AS & A Level Computing (9691) 9
10 (f) evaluate expressions containing arithmetic, relational and Boolean operators and parentheses (g) understand and use a range of operators and built-in functions for string manipulation, including location (LOCATE), extraction (LEFT, MID, RIGHT), comparison, concatenation, determining the length of a string (LENGTH) and converting between characters and their ASCII code (ASCII and CHAR) (h) understand that relational operations on alphanumeric strings depend on binary codes of the characters (i) input and validate data (j) output data onto screen/file/printer, formatting the data for output as necessary Run through the evaluation of expressions which contain mixtures of Boolean operators and relational operators to show how precedence and parentheses affect these operators. Give students some examples to work through. Run through their solutions. Discuss that arithmetic operations cannot be performed on strings. But there are other operations that are useful for manipulating strings and that these are usually in the form of functions (which need parameter(s) and return results). Issue hand-out which has the name of the function, description of what function does, and an illustrative example. Look at concatenation and comparison of two strings and show how these operations are expressed. Give students examples to answer. Run over their answers. Remind students that the ASCII and CHAR functions reinforce the idea that strings are actually stored as a series of (binary) numbers and that comparison of characters is actually the comparison of their (binary) codes. Consequently it is possible to perform a comparison between 2 and a and get a valid result. Discuss the facilities available in the procedural programming language for the input of data. Discuss the output facilities present in the procedural programming language. Show how the language handles different output destinations: screen, printer or file. Also show how the output can be formatted for the different characteristics of the device. page 157 pages pages pages pages Writing maintainable programs Content: Declaring and using variables and constants pages v1 2Y05 Cambridge International AS & A Level Computing (9691) 10
11 2.5.2 Self-documented code, including identifiers, annotation and formatting (a) define, understand and use the following terms correctly as they apply to programming: variable, constant, identifier, reserved word/keyword (b) declare variables and constants, understanding the effect of scope and issues concerning the choice of identifier (including the need to avoid reserved words/keywords) (c) select and use meaningful identifier names (d) initialise variables appropriately, before using them (e) annotate the code with comments so that the logic of the solution can be followed Give out a printed copy of a short program which uses both variables and constants. Discuss briefly the terms variable, constant, identifier and reserved word / keyword. Get students to list all the variables, constants, identifiers and reserved words /keywords present in the program. Check answers ensuring that the terms have been correctly understood. Discuss with students the fact that some languages require variables to be declared before use whilst other languages do not. Discuss why it is useful to declare and name a constant. Show an example of code which demonstrates variable and constant declarations in both the main program and in subroutines / procedures /functions. Use this code to discuss scope with students and also the advantages of declaring constants. Show students a program for finding the average of a set of numbers (the number of numbers is input by the user) but written with unsuitable / obscure identifier names. Ask students to comment on the program code. When the idea of using meaningful identifier names has been grasped get students to rewrite the program changing the identifier names. Discuss techniques for naming identifiers which aid readability (e.g. use of space, underscore, and capital letters). Often there are conventions about the names that are used. Discuss the benefits of initialising variables. Give some examples where uninitialized variables could lead to either run-time errors or erroneous results. Show that an uninitialized variable has a value but not a predictable one. Discuss the advantages of putting comments into code. Show, using examples, that too many comments can be as ineffective as too few comments. page 163 pages page onvention_%28programming%29 pages pages v1 2Y05 Cambridge International AS & A Level Computing (9691) 11
12 aspx (f) use indentation and formatting to show clearly the control structures within the code Demonstrate with examples the differences in making sense of code structure when indentation and formatting are used. page mming/structure_and_style 2.6 Testing and running a solution Content: Types of programming errors Testing strategies and test data Debugging Installation and execution (a) describe types of errors in programs (syntax, logic and run-time errors) and understand how and when these may be detected (b) describe testing strategies including white box testing, black box testing, alpha testing, beta testing and acceptance testing Demonstrate errors practically with a couple of small programs that have the three types of error present in them. Show when the errors will arise and what (in case of syntax and run-time) messages are produced. Show that logic errors don t produce error messages. Introduce the idea of black box testing: Black-box test design treats the system as a black-box, so it does not explicitly use knowledge of the internal code and structure. Black-box test design is usually described as focusing on testing functional requirements, external specifications or interface specifications of the program or module. Introduce white box testing testing all routes through a program. Give the students a number of small programs, with test plans which they should classify as black box or white box testing. pages pages aspx pages esting v1 2Y05 Cambridge International AS & A Level Computing (9691) 12
13 Introduce the concepts of alpha testing and beta testing. These are user tests. Explain that the programmer tests focus on error-free processing. User tests focus on usability, functionality, and performance. User testing with test data is called alpha testing. This is then followed by beta testing during which users use the system with their own data. Introduce acceptance testing. This is the final test by the customer to check that the developed system is what they asked for. (c) select suitable test data for a given problem, including normal, borderline and invalid data For black box testing, students should be shown how to select inputs which are normal, borderline, and invalid. As an example for black box testing, use the following: E.g.:- Problem: Read two numbers, a and b. Put the larger of the numbers into the box c. Conditions to be tested: both numbers positive - a larger - b larger one number positive - a positive - b positive both numbers negative - a larger (less negative) - b larger one number zero - a = 0 - b = 0 both numbers equal - both positive - both negative - both zero other conditions... A number of small algorithms containing errors and test plans with pre-determined data. There needs to be two sets with different types of error to allow for both black box and white page /Computing/AS/CPT2/Lesson%20Not es/cpt2_6%20testing.pdf v1 2Y05 Cambridge International AS & A Level Computing (9691) 13
14 box testing. (d) perform a dry run on a given algorithm, using a trace table (e) describe the use of a range of debugging tools and facilities available in procedural programming languages including translator diagnostics, break points, stepping, and variable check/watch Demonstrate the use of dry runs (desk checking) on simple arithmetic programs with loops. Demonstrate practically the range of debugging tools typically available. Translator diagnostics help with syntax and runtime error messages. Show examples. For logic errors need to use interpreter which has the tools mentioned. Produce a code example which has a logic error. A suitable example might be code that finds the average of a set of 100 numbers where the error is in the final arithmetic division which computes the average. A break point could be set just prior to the calculation (so that the loop does not have to be stepped through), the variables can be checked before and after the calculation which can be stepped through. pages bpages/f452_progtechn/dryruns/d ryruns.html pages aspx v1 2Y05 Cambridge International AS & A Level Computing (9691) 14
2.2 (a) Statement, subroutine, procedure, function, parameter, loop
Chapter 2.2: The structure of procedural programs 2.2 (a) Statement, subroutine, procedure, function, parameter, loop Procedural programs are ones in which instructions are executed in the order defined
More informationSTUDENT OUTLINE. Lesson 8: Structured Programming, Control Structures, if-else Statements, Pseudocode
STUDENT OUTLINE Lesson 8: Structured Programming, Control Structures, if- Statements, Pseudocode INTRODUCTION: This lesson is the first of four covering the standard control structures of a high-level
More informationTABLE OF CONTENTS 2 CHAPTER 1 3 CHAPTER 2 4 CHAPTER 3 5 CHAPTER 4. Algorithm Design & Problem Solving. Data Representation.
2 CHAPTER 1 Algorithm Design & Problem Solving 3 CHAPTER 2 Data Representation 4 CHAPTER 3 Programming 5 CHAPTER 4 Software Development TABLE OF CONTENTS 1. ALGORITHM DESIGN & PROBLEM-SOLVING Algorithm:
More informationGE PROBLEM SOVING AND PYTHON PROGRAMMING. Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING
GE8151 - PROBLEM SOVING AND PYTHON PROGRAMMING Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING 1) Define Computer 2) Define algorithm 3) What are the two phases in algorithmic problem solving? 4) Why
More informationHigher Computing Science Software Design and Development - Programming Summary Notes
Higher Computing Science Software Design and Development - Programming Summary Notes Design notations A design notation is the method we use to write down our program design. Pseudocode is written using
More informationUnit-II Programming and Problem Solving (BE1/4 CSE-2)
Unit-II Programming and Problem Solving (BE1/4 CSE-2) Problem Solving: Algorithm: It is a part of the plan for the computer program. An algorithm is an effective procedure for solving a problem in a finite
More informationCourse Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++
Introduction to Programming in C++ Course Text Programming in C++, Zyante, Fall 2013 edition. Course book provided along with the course. Course Description This course introduces programming in C++ and
More informationChapter 2.5 Writing maintainable programs
Chapter 2.5 Writing maintainable programs Good program writing techniques Maintenance is the updating of a program after it has been released. Maintenance will be helped when the programmer uses good programming
More informationMATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL. John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards
MATVEC: MATRIX-VECTOR COMPUTATION LANGUAGE REFERENCE MANUAL John C. Murphy jcm2105 Programming Languages and Translators Professor Stephen Edwards Language Reference Manual Introduction The purpose of
More informationProgrammers should write code that is self-documenting and split into small sections.
Writing Programs What are good program writing techniques? Programmers should write code that is self-documenting and split into small sections. Specifically, the programmers should: use meaningful identifier
More informationProgramming Fundamentals - A Modular Structured Approach using C++ By: Kenneth Leroy Busbee
1 0 1 0 Foundation Topics 1 0 Chapter 1 - Introduction to Programming 1 1 Systems Development Life Cycle N/A N/A N/A N/A N/A N/A 1-8 12-13 1 2 Bloodshed Dev-C++ 5 Compiler/IDE N/A N/A N/A N/A N/A N/A N/A
More informationCambridge Assessment International Education Cambridge International Advanced Subsidiary and Advanced Level. Published
Cambridge Assessment International Education Cambridge International Advanced Subsidiary and Advanced Level COMPUTER SCIENCE 9608/21 Paper 1 Written Paper MARK SCHEME Maximum Mark: 75 Published This mark
More informationDeveloping Algorithms
This scheme gives pupils a practical looking at developing algorithms firstly by looking at abstraction, decomposition and algorithmic thinking. Students then learn about the different techniques used
More informationMethod & Tools for Program Analysis & Design
Method & Tools for Program Analysis & Design TMB208 Pemrograman Teknik Kredit: 3 (2-3) 1 Programming Logic and Design, Introductory, Fourth Edition 2 1 Programming Methods Based on structures of programming
More informationIndividual research task. You should all have completed the research task set last week. Please make sure you hand it in today.
Lecture 6 Individual research task. You should all have completed the research task set last week. Please make sure you hand it in today. Previously Decision structures with flowcharts Boolean logic UML
More informationhttps://asd-pa.perfplusk12.com/admin/admin_curric_maps_display.aspx?m=5507&c=618&mo=18917&t=191&sy=2012&bl...
Page 1 of 13 Units: - All - Teacher: ProgIIIJavaI, CORE Course: ProgIIIJavaI Year: 2012-13 Intro to Java How is data stored by a computer system? What does a compiler do? What are the advantages of using
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationGraphQuil Language Reference Manual COMS W4115
GraphQuil Language Reference Manual COMS W4115 Steven Weiner (Systems Architect), Jon Paul (Manager), John Heizelman (Language Guru), Gemma Ragozzine (Tester) Chapter 1 - Introduction Chapter 2 - Types
More informationFull file at
Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class
More informationSTUDENT LESSON A12 Iterations
STUDENT LESSON A12 Iterations Java Curriculum for AP Computer Science, Student Lesson A12 1 STUDENT LESSON A12 Iterations INTRODUCTION: Solving problems on a computer very often requires a repetition of
More informationSwitching to AQA from Edexcel
Switching to AQA from Edexcel This resource compares our new GCSE Computer Science specification (8520) with the new Edexcel Computer Science specification (1CP1). If you are thinking of switching from
More informationChapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationCambridge International Examinations Cambridge International Advanced Subsidiary and Advanced Level
Cambridge International Examinations Cambridge International Advanced Subsidiary and Advanced Level COMPUTER SCIENCE 9608/23 Paper 2 Fundamental Problem-solving and Programming Skills May/June 2018 PRE-RELEASE
More information*2492192164* wwwonlineexamhelpcom wwwonlineexamhelpcom UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Advanced Subsidiary Level and Advanced Level COMPUTING 9691/21
More informationCOP 1220 Introduction to Programming in C++ Course Justification
Course Justification This course is a required first programming C++ course in the following degrees: Associate of Arts in Computer Science, Associate in Science: Computer Programming and Analysis; Game
More information9691 COMPUTING. 9691/22 Paper 2 (Written Paper), maximum raw mark 75
CAMBRIDGE INTERNATIONAL EXAMINATIONS Cambridge International Advanced Subsidiary and Advanced Level MARK SCHEME for the May/June 2015 series 9691 COMPUTING 9691/22 Paper 2 (Written Paper), maximum raw
More informationCurriculum Map Grade(s): Subject: AP Computer Science
Curriculum Map Grade(s): 11-12 Subject: AP Computer Science (Semester 1 - Weeks 1-18) Unit / Weeks Content Skills Assessments Standards Lesson 1 - Background Chapter 1 of Textbook (Weeks 1-3) - 1.1 History
More informationTotal Test Questions: 43 Levels: Grades Units of Credit:.50
DESCRIPTION Computer Programming IA introduces students to the fundamentals of computer programming. Students will learn to design, code, and test their own programs while applying mathematical concepts.
More informationIntroduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p.
Introduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p. 9 Self-Test Exercises p. 11 History Note p. 12 Programming and
More informationChapter 2 Working with Data Types and Operators
JavaScript, Fourth Edition 2-1 Chapter 2 Working with Data Types and Operators At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics
More informationThe PCAT Programming Language Reference Manual
The PCAT Programming Language Reference Manual Andrew Tolmach and Jingke Li Dept. of Computer Science Portland State University September 27, 1995 (revised October 15, 2002) 1 Introduction The PCAT language
More informationIntroduction to C Final Review Chapters 1-6 & 13
Introduction to C Final Review Chapters 1-6 & 13 Variables (Lecture Notes 2) Identifiers You must always define an identifier for a variable Declare and define variables before they are called in an expression
More informationComputer Programming IA
EXAM INFORMATION Items 42 Points 51 Prerequisites NONE Course Length ONE SEMESTER DESCRIPTION introduces students to the fundamentals of computer programming. Students will learn to design, code, and test
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationSNS COLLEGE OF ENGINEERING,
SNS COLLEGE OF ENGINEERING, COIMBATORE Department of Computer Science and Engineering QUESTION BANK(PART A) GE8151 - PROBLEM SOLVING AND PYTHON PROGRAMMING TWO MARKS UNIT-I 1. What is computer? Computers
More informationCourse Title: C Programming Full Marks: Course no: CSC110 Pass Marks: Nature of course: Theory + Lab Credit hours: 3
Detailed Syllabus : Course Title: C Programming Full Marks: 60+20+20 Course no: CSC110 Pass Marks: 24+8+8 Nature of course: Theory + Lab Credit hours: 3 Course Description: This course covers the concepts
More informationChapter 2 Basic Elements of C++
C++ Programming: From Problem Analysis to Program Design, Fifth Edition 2-1 Chapter 2 Basic Elements of C++ At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion
More informationIntroduction to Java Applications
2 Introduction to Java Applications OBJECTIVES In this chapter you will learn: To write simple Java applications. To use input and output statements. Java s primitive types. Basic memory concepts. To use
More informationMARK SCHEME for the October/November 2013 series 9691 COMPUTING. 9691/21 Paper 2 (Written Paper), maximum raw mark 75
CAMBRIDGE INTERNATIONAL EXAMINATIONS GCE Advanced Subsidiary Level and GCE Advanced Level MARK SCHEME for the October/November 2013 series 9691 COMPUTING 9691/21 Paper 2 (Written Paper), maximum raw mark
More information5 The Control Structure Diagram (CSD)
5 The Control Structure Diagram (CSD) The Control Structure Diagram (CSD) is an algorithmic level diagram intended to improve the comprehensibility of source code by clearly depicting control constructs,
More informationChapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics
Java Programming, Sixth Edition 2-1 Chapter 2 Using Data At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional Projects Additional
More informationObjectives. Chapter 4: Control Structures I (Selection) Objectives (cont d.) Control Structures. Control Structures (cont d.) Relational Operators
Objectives Chapter 4: Control Structures I (Selection) In this chapter, you will: Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean)
More informationNational 5 Computing Science Software Design & Development
National 5 Computing Science Software Design & Development 1 Stages of Development 2 Analysis 3 Design 4 Implementation 5 Testing 6 Documentation 7 Evaluation 8 Maintenance 9 Data Types & Structures 10
More informationUNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Advanced Subsidiary Level and Advanced Level
UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Advanced Subsidiary Level and Advanced Level *2492192164* COMPUTING 9691/21 Paper 2 October/November 2013 2 hours Candidates
More informationChapter 2.6: Testing and running a solution
Chapter 2.6: Testing and running a solution 2.6 (a) Types of Programming Errors When programs are being written it is not surprising that mistakes are made, after all they are very complicated. There are
More information1 Lexical Considerations
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2013 Handout Decaf Language Thursday, Feb 7 The project for the course is to write a compiler
More informationChapter 3. More Flow of Control. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Chapter 3 More Flow of Control Overview 3.1 Using Boolean Expressions 3.2 Multiway Branches 3.3 More about C++ Loop Statements 3.4 Designing Loops Slide 3-3 Flow Of Control Flow of control refers to the
More informationActivity Guide - Will it Crash?
Unit 5 - Lesson 9 Name(s) Period Date Activity Guide - Will it Crash? Let s play a game: Will it Crash? Each row in the table below presents a small program that uses if-statements and robot commands.
More informationProgramming revision. Revision tip: Focus on the things you find difficult first.
Programming revision Revision tip: Focus on the things you find difficult first. Task Time (minutes) a 1. Complete self assessment sheet. 2 2. Read through the chapter on programming. 15 3. Work through
More informationStating the obvious, people and computers do not speak the same language.
3.4 SYSTEM SOFTWARE 3.4.3 TRANSLATION SOFTWARE INTRODUCTION Stating the obvious, people and computers do not speak the same language. People have to write programs in order to instruct a computer what
More informationFull file at
Java Programming, Fifth Edition 2-1 Chapter 2 Using Data within a Program At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional
More informationSoftware Development Techniques. December Sample Exam Marking Scheme
Software Development Techniques December 2015 Sample Exam Marking Scheme This marking scheme has been prepared as a guide only to markers. This is not a set of model answers, or the exclusive answers to
More informationUNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Advanced Subsidiary Level and Advanced Level
UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Advanced Subsidiary Level and Advanced Level *4991324730* COMPUTING 9691/23 Paper 2 May/June 2012 2 hours Candidates
More informationProgramming Logic and Design Seventh Edition Chapter 2 Elements of High-Quality Programs
Programming Logic and Design Chapter 2 Elements of High-Quality Programs Objectives In this chapter, you will learn about: Declaring and using variables and constants Assigning values to variables [assignment
More informationChapter 4: Control Structures I (Selection) Objectives. Objectives (cont d.) Control Structures. Control Structures (cont d.
Chapter 4: Control Structures I (Selection) In this chapter, you will: Objectives Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean)
More informationChapter 2.4: Common facilities of procedural languages
Chapter 2.4: Common facilities of procedural languages 2.4 (a) Understand and use assignment statements. Assignment An assignment is an instruction in a program that places a value into a specified variable.
More informationSprite an animation manipulation language Language Reference Manual
Sprite an animation manipulation language Language Reference Manual Team Leader Dave Smith Team Members Dan Benamy John Morales Monica Ranadive Table of Contents A. Introduction...3 B. Lexical Conventions...3
More informationUnit 6 - Software Design and Development LESSON 3 KEY FEATURES
Unit 6 - Software Design and Development LESSON 3 KEY FEATURES Last session 1. Language generations. 2. Reasons why languages are used by organisations. 1. Proprietary or open source. 2. Features and tools.
More informationPROBLEM SOLVING WITH FORTRAN 90
David R. Brooks PROBLEM SOLVING WITH FORTRAN 90 FOR SCIENTISTS AND ENGINEERS Springer Contents Preface v 1.1 Overview for Instructors v 1.1.1 The Case for Fortran 90 vi 1.1.2 Structure of the Text vii
More informationUnderstanding the problem
2.1.1 Problem solving and design An algorithm is a plan, a logical step-by-step process for solving a problem. Algorithms are normally written as a flowchart or in pseudocode. The key to any problem-solving
More informationFRAC: Language Reference Manual
FRAC: Language Reference Manual Justin Chiang jc4127 Kunal Kamath kak2211 Calvin Li ctl2124 Anne Zhang az2350 1. Introduction FRAC is a domain-specific programming language that enables the programmer
More informationTOPIC 2 INTRODUCTION TO JAVA AND DR JAVA
1 TOPIC 2 INTRODUCTION TO JAVA AND DR JAVA Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson, and instructor materials prepared
More informationVariable A variable is a value that can change during the execution of a program.
Declare and use variables and constants Variable A variable is a value that can change during the execution of a program. Constant A constant is a value that is set when the program initializes and does
More informationGOLD Language Reference Manual
GOLD Language Reference Manual Language Guru: Timothy E. Chung (tec2123) System Architect: Aidan Rivera (ar3441) Manager: Zeke Reyna (eer2138) Tester: Dennis Guzman (drg2156) October 16th, 2017 1 Introduction
More informationChapter1 Overview of computers
1 Chapter1 Overview of computers 1. What is a computer? 2. Which is the earliest computing machine? 3. Who invented the pascaline? 4. What is Charles babbage known as? 5. What is the machine proposed by
More information\n is used in a string to indicate the newline character. An expression produces data. The simplest expression
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationIntroduction to Computer Programming Using FORTRAN 77
Introduction to Computer Programming Using FORTRAN 77 Al-Dhaher, K. Garout, Y. Lafi, A. Al-Muhtaseb, H. Nazzal, A. Saeed, M. Yazdani, J. Zeidan, Y. August 1995 Second Edition Information and Computer Science
More informationSwitching to AQA from OCR
Switching to AQA from OCR This resource compares our new GCSE Computer Science specification (8520) with the new OCR Computer Science specification (J276). If you are thinking of switching from OCR to
More informationProblem Solving with C++
GLOBAL EDITION Problem Solving with C++ NINTH EDITION Walter Savitch Kendrick Mock Ninth Edition PROBLEM SOLVING with C++ Problem Solving with C++, Global Edition Cover Title Copyright Contents Chapter
More informationSystems and Principles Unit Syllabus
Systems and Principles Unit Syllabus Level 2 Creating an event driven computer program using Java 7540-007 www.cityandguilds.com October 2010 Version 2.0 About City & Guilds City & Guilds is the UK s leading
More informationCambridge International General Certificate of Secondary Education 0478 Computer Science June 2015 Principal Examiner Report for Teachers
COMPUTER SCIENCE Paper 0478/11 Paper 1 Key Messages This is a new syllabus and the standard of candidates work was mostly very good. There is a continued move to provide questions where candidates have
More informationCOMPUTING Syllabus Version 1.0
ECDL MODULE COMPUTING Syllabus Version 1.0 Purpose This document details the syllabus for the Computing module. The syllabus describes, through learning outcomes, the knowledge and skills that a candidate
More informationAlgorithmic "imperative" language
Algorithmic "imperative" language Undergraduate years Epita November 2014 The aim of this document is to introduce breiy the "imperative algorithmic" language used in the courses and tutorials during the
More informationDEPARTMENT OF COMPUTER AND MATHEMATICAL SCIENCES UNIVERSITI TEKNOLOGI MARA CAWANGAN PULAU PINANG
DEPARTMENT OF COMPUTER AND MATHEMATICAL SCIENCES UNIVERSITI TEKNOLOGI MARA CAWANGAN PULAU PINANG PROGRAMME Diploma in Civil Engineering Diploma in Mechanical Engineering COURSE/CODE Fundamentals of Computer
More informationAll copyrights reserved - KV NAD, Aluva. Dinesh Kumar Ram PGT(CS) KV NAD Aluva
All copyrights reserved - KV NAD, Aluva Dinesh Kumar Ram PGT(CS) KV NAD Aluva Overview Looping Introduction While loops Syntax Examples Points to Observe Infinite Loops Examples using while loops do..
More informationRETURN X return X Returning a value from within a function: computes the value of variable exits the function and returns the value of the variable
STUDENT TEACHER CLASS WORKING AT GRADE TERM TARGET YEAR TARGET Pseudocode Python Description BEGIN END Identifies the start of a program Identifies the end of a program READ X, Y, Z input() Identifies
More informationSoftware Development 2
Software Development 2 Course Map This module introduces some of the techniques programmers use to create applications and programs. Introduction Computer Principles and Components Software Development
More informationWhile Loops A while loop executes a statement as long as a condition is true while condition: statement(s) Statement may be simple or compound Typical
Recommended Readings Chapter 5 Topic 5: Repetition Are you saying that I am redundant? That I repeat myself? That I say the same thing over and over again? 1 2 Repetition So far, we have learned How to
More informationEdexcel GCSE in Computer Science Microsoft IT Academy Mapping
Edexcel GCSE in Computer Science Microsoft IT Academy Mapping Topic 1: Problem solving Subject Content: 1.1 Algorithms MOAC course and lesson(s) MVA course and module(s) : 1.1.1 Understand what an algorithm
More informationS/W Programming & Languages
S/W Programming & Languages Overview Programming five steps Five generations High-level programming Object-oriented programming Internet programming 2 Programming What are the five steps of the programdevelopment
More informationContents. Jairo Pava COMS W4115 June 28, 2013 LEARN: Language Reference Manual
Jairo Pava COMS W4115 June 28, 2013 LEARN: Language Reference Manual Contents 1 Introduction...2 2 Lexical Conventions...2 3 Types...3 4 Syntax...3 5 Expressions...4 6 Declarations...8 7 Statements...9
More informationUnit 6 - Software Design and Development LESSON 3 KEY FEATURES
Unit 6 - Software Design and Development LESSON 3 KEY FEATURES Last session 1. Language generations. 2. Reasons why languages are used by organisations. 1. Proprietary or open source. 2. Features and tools.
More informationSimple Java Programming Constructs 4
Simple Java Programming Constructs 4 Course Map In this module you will learn the basic Java programming constructs, the if and while statements. Introduction Computer Principles and Components Software
More informationHrs Hrs Hrs Hrs Hrs Marks Marks Marks Marks Marks
Subject Code: CC103-N Subject Title: FUNDAMENTALS OF PROGRAMMING Teaching scheme Total L T P Total Theory Credit Evaluation Scheme Mid Sem Exam CIA Pract. Total Hrs Hrs Hrs Hrs Hrs Marks Marks Marks Marks
More informationVARIABLES. 1. STRINGS Data with letters and/or characters 2. INTEGERS Numbers without decimals 3. FLOATING POINT NUMBERS Numbers with decimals
VARIABLES WHAT IS A VARIABLE? A variable is a storage location in the computer s memory, used for holding information while the program is running. The information that is stored in a variable may change,
More informationCSc 10200! Introduction to Computing. Lecture 2-3 Edgardo Molina Fall 2013 City College of New York
CSc 10200! Introduction to Computing Lecture 2-3 Edgardo Molina Fall 2013 City College of New York 1 C++ for Engineers and Scientists Third Edition Chapter 2 Problem Solving Using C++ 2 Objectives In this
More informationChapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. A Guide to this Instructor s Manual:
Java Programming, Eighth Edition 2-1 Chapter 2 Using Data A Guide to this Instructor s Manual: We have designed this Instructor s Manual to supplement and enhance your teaching experience through classroom
More informationAlgorithms and Flowcharts
UNIT 2 Chapter 1 Algorithms and Flowcharts After studying this lesson, the students will be able to understand the need of Algorithm and Flowcharts; solve problems by using algorithms and flowcharts; get
More informationINTRODUCTION 1 AND REVIEW
INTRODUTION 1 AND REVIEW hapter SYS-ED/ OMPUTER EDUATION TEHNIQUES, IN. Programming: Advanced Objectives You will learn: Program structure. Program statements. Datatypes. Pointers. Arrays. Structures.
More information3. Except for strings, double quotes, identifiers, and keywords, C++ ignores all white space.
Chapter 2: Problem Solving Using C++ TRUE/FALSE 1. Modular programs are easier to develop, correct, and modify than programs constructed in some other manner. ANS: T PTS: 1 REF: 45 2. One important requirement
More informationLogical Operators and switch
Lecture 5 Relational and Equivalence Operators SYS-1S22 / MTH-1A66 Logical Operators and switch Stuart Gibson sg@sys.uea.ac.uk S01.09A 1 Relational Operator Meaning < Less than > Greater than
More informationCambridge International Examinations Cambridge International Advanced Subsidiary and Advanced Level
Cambridge International Examinations Cambridge International Advanced Subsidiary and Advanced Level *8955017847* COMPUTER SCIENCE 9608/23 Paper 2 Fundamental Problem-solving and Programming Skills May/June
More informationMicrosoft Visual Basic 2005: Reloaded
Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 3 Variables, Constants, Methods, and Calculations Objectives After studying this chapter, you should be able to: Declare variables and named
More informationObject Oriented Programming with Java
Object Oriented Programming with Java What is Object Oriented Programming? Object Oriented Programming consists of creating outline structures that are easily reused over and over again. There are four
More informationWorking with JavaScript
Working with JavaScript Creating a Programmable Web Page for North Pole Novelties 1 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page 2 Objectives
More informationTABLE OF CONTENTS 2 CHAPTER 1 3 CHAPTER 2 4 CHAPTER 3. Algorithm Design & Problem Solving. Programming. Databases
2 CHAPTER 1 Algorithm Design & Problem Solving 3 CHAPTER 2 Programming 4 CHAPTER 3 Databases TABLE OF CONTENTS 1. ALGORITHM DESIGN & PROBLEM-SOLVING 1.1 Problem-solving & Design Every computer system is
More informationSteps to program development
Automate processes - Programming Concepts and Design Steps to program development A computer program is a set of formal instructions, which the computer executes in order to carry out some designated task.
More informationLexical Considerations
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2010 Handout Decaf Language Tuesday, Feb 2 The project for the course is to write a compiler
More informationPseudocode Structure 5th October 2018
Pseudocode Structure 5 th October 2018 Unit 1 Objective To apply language set of rules in writing Algorithm Learning outcome Students are expected to apply symbols to write algorithm in flowchart diagram
More informationSoftware Development Techniques. 26 November Marking Scheme
Software Development Techniques 26 November 2015 Marking Scheme This marking scheme has been prepared as a guide only to markers. This is not a set of model answers, or the exclusive answers to the questions,
More information