Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming.

Slides:



Advertisements
Similar presentations
CS 101 Introductory Programming - Lecture 7: Loops In C & Good Coding Practices Presenter: Ankur Chattopadhyay.
Advertisements

Chapter 2: Algorithm Discovery and Design
Slides prepared by Rose Williams, Binghamton University Chapter 3 Flow of Control Loops in Java.
Programming Languages Structure
Chapter 1 Program Design
1 CSC 221: Computer Programming I Fall 2004 course overview  what did we set out to learn?  what did you actually learn?  where do you go from here?
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Carolyn Seaman University of Maryland, Baltimore County.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Simple Program Design Third Edition A Step-by-Step Approach
CIS Computer Programming Logic
Design-Making Projects Work (Chapter7) n Large Projects u Design often distinct from analysis or coding u Project takes weeks, months or years to create.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
Invitation to Computer Science, Java Version, Second Edition.
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Marie desJardins University of Maryland, Baltimore County.
Computer Concepts 2014 Chapter 12 Computer Programming.
Design engineering Vilnius The goal of design engineering is to produce a model that exhibits: firmness – a program should not have bugs that inhibit.
© 2011 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Stewart Venit ~ Elizabeth Drake Developing a Program.
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
Problem Solving using the Science of Computing MSE 2400 EaLiCaRA Spring 2015 Dr. Tom Way.
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
The Software Development Process
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
1 CSC 221: Computer Programming I Spring 2008 course overview  What did we set out to learn?  What did you actually learn?  Where do you go from here?
1 b Boolean expressions b truth tables b conditional operator b switch statement b repetition statements: whilewhile do/whiledo/while forfor Lecture 3.
CMPSC 16 Problem Solving with Computers I Spring 2014 Instructor: Tevfik Bultan Lecture 4: Introduction to C: Control Flow.
STEP 3- DEVELOP AN ALGORITHM At this stage we break down the problem into simple manageable steps so that they can be handled easily.
Chapter 2 Principles of Programming and Software Engineering.
Flow Control in Imperative Languages. Activity 1 What does the word: ‘Imperative’ mean? 5mins …having CONTROL and ORDER!
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science.
Program Design. Simple Program Design, Fourth Edition Chapter 1 2 Objectives In this chapter you will be able to: Describe the steps in the program development.
Progression in KS3/4 Algorithms MONDAY 30 TH NOVEMBER SUE SENTANCE.
JavaScript: API’s, Parameters and Creating Functions with Parameters
AP CSP: Creating Functions & Top-Down Design
The Need for Algorithms
Creativity of Algorithms & Simple JavaScript Commands
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming.
CSC 221: Computer Programming I Spring 2010
Creating Functions with Parameters
CSC 221: Computer Programming I Fall 2005
Unit 3 lesson 2&3 The Need For Algorithms- Creativity in Algorithms
Creativity in Algorithms
The Need for Algorithms 2 days
APIs and Function Parameters
Looping and Random Numbers
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer.
Introduction to Computer Programming
Practice PT - Design a Digital Scene 3 days
Computer Programming.
Creativity in Algorithms
Program Design Introduction to Computer Programming By:
Lesson 15: Processing Arrays
UNIT 3 CHAPTER 1 LESSON 4 Using Simple Commands.
Looping and Random Numbers
Unit 3: Lesson 9-Looping and Random Numbers
Unit 3: Lesson 6 & 7- Functions and Top-Down Design / APIs and Function Parameters Day 27.
Algorithm and Ambiguity
Create – Performance Task
Algorithms and Problem Solving
Creating Computer Programs
Functions and Top-Down Design
Unit 3 lesson 2-5 The Need For Algorithms- Creativity in Algorithms – Simple Commands - Functions Day 18.
U3L1 The Need For Programming
Top-Down Design & JSP Skill Area Part D
Quiz: Computational Thinking
Type Topic in here! Created by Educational Technology Network
Creating Computer Programs
U3L2 The Need For Algorithms
U3L8 Creating Functions with Parameters
WRITING AN ALGORITHM, PSEUDOCODE, AND FLOWCHART LESSON 2.
Presentation transcript:

Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming language that captures only the most primitive operations available to a machine. Anything that a computer can do can be represented with combinations of low level commands. • High level programming language: A programming language with many commands and features designed to make common tasks easier to program. Any high level functionality is encapsulated as combinations of low level commands. Sequencing is the application of each step of an algorithm in the order in which the statements are given. ◦ Selection uses a Boolean condition (a TRUE/FALSE condition) to determine which of two parts of an algorithm is used. ◦ Iteration is the repetition of part of an algorithm until a condition is met or for a specified number of times. Abstraction - Pulling out specific differences to make one solution work for multiple problems. Function - A piece of code that you can easily call over and over again. API - a collection of commands made available to a programmer Documentation - a description of the behavior of a command, function, library, API, etc. Library - a collection of commands / functions, typically with a shared purpose Parameter - An extra piece of information that you pass to the function to customize it for a specific need. For Loop - A particular kind of looping construct provided in many languages. Typically, a for loop defines a counting variable that is checked and incremented on each iteration in order to loop a specific number of times. Loop - The action of doing something over and over again

U3L10: Practice PT - Design a Digital Scene CS Principles U3L10: Practice PT - Design a Digital Scene

U3L10: Practice PT - Design a Digital Scene Objectives SWBAT: Write programs that address one component of a larger programming problem and integrate with other similarly designed programs. Collaborate to break down a complex programming problem into its component parts. Use code written by other programmers to complete a larger programming task.

U3L9 Reflection Students should briefly journal and share responses to the following question: Prompt: “Develop a rule for deciding when to use a loop within a program. Perhaps think about when to use a loop versus a function. Try to make connections to Top-Down Design in your response. Below your rule, write a couple sentences justifying your rule.”

Abstraction in Programming Abstraction is an important tool in programming, not only because it allows individual programmers to break down complex problems, but because it enables effective forms of collaboration. Once a problem has been broken down into its component parts, teams of programmers (sometimes dozens or more) can attack individual components of that problem in parallel. This style of programming requires clear communication and a shared understanding of the high- level requirements of the software. If implemented carefully, however, it can be an effective strategy for rapidly producing large and complex pieces of software.

Vocabulary Abstraction - Pulling out specific differences to make one solution work for multiple problems.

Day 1 Review the project guidelines and the rubric. Assign students to groups to follow the Group Project Planning guide. Groups complete the Project Description document. Groups break target scene into high-level functions, define their behavior and complete the Project Component Table. Students begin programming individual components.

Day 2 Students continue to work on programming their individual functions. Groups begin to recombine their functions and students begin work on their digital scenes.

Day 3 Students finalize their digital scenes. Students complete their reflection questions and submit their projects.