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
Program Design and Development
Advertisements

Tell the robot exactly how to draw a square on the board.
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Carolyn Seaman University of Maryland, Baltimore County.
Abstraction IS 101Y/CMSC 101 Computational Thinking and Design Tuesday, September 17, 2013 Marie desJardins University of Maryland, Baltimore County.
CS221 Algorithm Basics. What is an algorithm? An algorithm is a list of instructions that transform input information into a desired output. Each instruction.
Flowchart. a diagram of the sequence of movements or actions of people or things involved in a complex system or activity. a graphical representation.
Computer Systems Architecture Edited by Original lecture by Ian Sunley Areas: Computer users Basic topics What is a computer?
Software Engineering Algorithms, Compilers, & Lifecycle.
Michael Emerton
JavaScript: API’s, Parameters and Creating Functions with Parameters
AP Computer Science Principals Course Importance and Overview
Victory Lutheran college
AP CSP: Creating Functions & Top-Down Design
The Need for Algorithms
Creativity of Algorithms & Simple JavaScript Commands
JavaScript/ App Lab Programming:
AP CSP: The Need for Programming Languages and Algorithms
High or Low Level Programming Language? Justify your decision.
AP Computer Science Principles
Unit 3: Lesson 1 - The Need for Programming Languages
Vocabulary byte - The technical term for 8 bits of data.
Eric Roberts and Jerry Cain
Creating Functions with Parameters
Lesson 5-2 AP Computer Science Principles
Unit 3 lesson 2&3 The Need For Algorithms- Creativity in Algorithms
Creativity in Algorithms
CS101 Introduction to Computing Lecture 19 Programming Languages
Stage 11: Artist: Nested Loops
The Binary Number System
The Need for Programming Languages
Introduction to Programmng in Python
The Need for Algorithms 2 days
AP Computer Science Principals Course Importance and Overview
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer.
Foundations of Programming: Introduction to Programming
Lesson 9: "if-else-if" and Conditional Logic
Algorithm and Ambiguity
Foundations of Computer Science
Loops and Switches Pre-Quiz
LESSON 11 – WHILE LOOPS UNIT 5 – 1/10/17.
Creativity in Algorithms
Lesson 2 Programming constructs – Algorithms – Scratch – Variables Intro.
Lesson 16: Functions with Return Values
Lesson 15: Processing Arrays
UNIT 3 CHAPTER 1 LESSON 4 Using Simple Commands.
Creating Functions with Parameters
HAPPY NEW YEAR! Lesson 7: If-statements unplugged
Looping and Random Numbers
slides courtesy of Eric Roberts
Computational Thinking for KS3
Welcome! Martin Norris Year 5 Class Teacher & Computing
Algorithm and Ambiguity
Global Challenge Walking for Water Lesson 2.
Computer Science Core Concepts
Algorithms and Problem Solving
Creating Computer Programs
Global Challenge Walking for Water Lesson 2.
Click to add Text Computers & Instructions. Computers are given instructions in the form of computer programs that are created through the development.
Unit 3 lesson 2-5 The Need For Algorithms- Creativity in Algorithms – Simple Commands - Functions Day 18.
AP Computer Science Principals Course Importance and Overview
An Introduction to Programming with C++ Fifth Edition
U3L1 The Need For Programming
Unit 3: Lesson 1 - The Need for Programming Languages
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming.
Loops and Switches How Do You Make Loops and Switches? lesson > TeachEngineering.org Center for Computational Neurobiology, University of Missouri.
Type Topic in here! Created by Educational Technology Network
Creating Computer Programs
U3L2 The Need For Algorithms
U3L8 Creating Functions with Parameters
U3L4 Using Simple Commands
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.

U3L4 Using Simple Commands CS Principles U3L4 Using Simple Commands

U3L4 Using Simple Commands Objectives SWBAT: Solve simple programming challenges when the set of allowed commands is constrained. Explain considerations that go into “efficiency” of a program. Use App Lab to write programs that create simple drawings with “turtle graphics.” Work with a partner to program a turtle task that requires about 50 lines of code. Justify or explain choices made when programming a solution to a turtle task.

Unit 3 Programming We are about to start a unit on computer programming, in which you will write instructions for a computer to execute. Computers are machines. So if we invent an instruction or command for a computer to execute, then it should be unambiguous how the computer will interpret or attempt to execute that instruction; at the very least we can expect that the machine’s behavior is repeatable, so we can run some tests until we understand what the computer is doing and why. So then the challenge - and fun - of programming at its core, is understanding how to use and combine those machine instructions to make the computer do what you want, or to solve a problem.

Using Simple Commands By stripping down the available commands to only a few, these constraints force you to think about the most efficient way to solve the problem and come up with creative ways of doing it. A reason to learn this way is because at its core, a computer can really only do a few simple things: load a number from memory, store a number in memory, add two numbers together, etc. Everything the computer can do is the result of combining these simple instructions to do more and more sophisticated things. Students in this class will embark on a similar journey, building up complexity from only a few primitive sets of commands. As students are presented with increasingly complex tasks, we will progressively expose more commands as a matter of convenience. Big picture: when programming at any level of expertise you are always limited by the constraints of the programming language you choose to use. Whether the language gives you thousands of commands and libraries with which to control various things or only a few, you always have to use those as building blocks to get the computer to do what you want.

U3L3 Prompt “We have been preparing to learn how to program by doing some activities with LEGO® and playing cards. Today we will start programming for “real.” Prompt: Thinking back to the algorithms activities what do you anticipate will be the same about those activities vs. the ‘real’ thing?”

Prompt Discussion: Some things that will be the same to key in on: Focus on creating processes to do things Multiple ways to solve a problem Some struggles understanding exactly what commands mean Working with partners Reasoning about solutions by testing them repeatedly, acting them out Creatively applying the limited set of commands.

4 Turtle Commands moveForward – move the turtle forward a predefined amount of units turnLeft – turn left 90 degrees penUp – pick the pen up (stop drawing when the turtle moves) penDown - put the pen down (resume drawing when the turtle moves)

U3L4 Activity on Code Studio Watch the video (as a class) and begin code studio activities. (Stages on Code Studio will be graded tomorrow.)

U3L4 Reflection Respond to the following prompt in your notebooks. Thought Prompt: What does “efficiency” mean when programming? What is the “most efficient” way to program the solution for the 3x3 grid?