CMSC131. Introduction to Computational Thinking. (with links to some external Scratch exercises) How do you accomplish a task?

Similar documents
CENG 466 Artificial Intelligence. Lecture 4 Solving Problems by Searching (II)

Rules for the Mental Calculation World Cup 2018

Basketball Packaging. Basketball Packaging. 1 of 10. Copyright 2008, Exemplars, Inc. All rights reserved.

Scrum Basics. Prof. Casper Lassenius Aalto University

World Para Swimming Coaching Pathway. Participant profiles and learning outcomes. 16 November 2017 (V01)

Rulebook Revision 2016 v1.0 Published September 18, 2015 Sponsored By

Agile Development with Scrum V 2.1ITC

Flies and a Frog. Flies and a Frog. 1 of 11. Copyright 2007, Exemplars, Inc. All rights reserved.

Better Search Improved Uninformed Search CIS 32

3. Select a colour and then use the Rectangle drawing tool to draw a rectangle like the one below.

Problem Solving Agents

: A WEB-BASED SOLVER FOR COMPRESSIBLE FLOW CALCULATIONS

EXIN Agile Scrum Foundation

FOCUS ON PHYSICAL SCIENCE: CALIFORNIA EDITION (PRENTICE HALL SCIENCE EXPLORER) BY DAVID V. FRANK

Uninformed search methods II.

JUNIOR RANKING SYSTEM (NJRS)

Agile Methodology (Scrum Approach)

Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) Computer Science Department

Software Engineering. M Umair.

International olympiads in Informatics in Kazakhstan. A. Iglikov Z. Gamezardashvili B. Matkarimov

===========================================================================================

Start - All Programs - Class Software - Scratch - Scratch move move move Sound play drum move move move play drum Control forever forever forever

MIS0855: Data Science In-Class Exercise: Working with Pivot Tables in Tableau

Two-Dimensional Motion and Vectors

Oxygen Meter User Manual

Lesson 14: Games of Chance and Expected Value

Walking up Scenic Hills: Towards a GIS Based Typology of Crowd Sourced Walking Routes

P r o j e c t M a n a g e M e n t f o r I n t e r a c t I v e D I g I t a l M e D I a

AGA Swiss McMahon Pairing Protocol Standards

Meddling with the Medals

Problem Solving as Search - I

AGILE PROJECT MANAGEMENT FOR BEGINNERS: MASTERING THE BASICS WITH SCRUM BY BRYAN MATHIS

Cuisenaire Rods. A Guide to Teaching Strategies, Activities, and Ideas

C o d i n g f o r i n t e r a C t i v e d i g i t a l M e d i a

Welcome to. Computer Science! Dr. Mircea Agapie Office: SCIENCE 213-C

ECONOMICS DEPT NON - ASSESSED TEST. For Internal Students of Royal Holloway. Time Allowed: 1 hour. Instructions to candidates:

National Robotics Competition 2018 NRC WRO Challenge Manual

The Cooperative Cleaners Case Study: Modelling and Analysis in Real-Time ABS

Board /Authority Approved Course Hockey Academy 10

Flock Theory, Applied (To Scrum)

Module 2. Topic: Mathematical Representations. Mathematical Elements. Pedagogical Elements. Activities Mathematics Teaching Institute

ZIPWAKE DYNAMIC TRIM CONTROL SYSTEM OUTLINE OF OPERATING PRINCIPLES BEHIND THE AUTOMATIC MOTION CONTROL FEATURES

An Agile PM Isn t What You Think Where Does Traditional Project Management Fit in an Agile Project Using Scrum? By Jimi Fosdick

Pressure Measurement Unit HEMP

Parametric Ball Toss TEACHER NOTES MATH NSPIRED. Math Objectives. Vocabulary. About the Lesson. TI-Nspire Navigator System

Game Theory. 0. Organizational Matters. Bernhard Nebel and Robert Mattmüller. Summer semester Albert-Ludwigs-Universität Freiburg

ORF 201 Computer Methods in Problem Solving. Final Project: Dynamic Programming Optimal Sailing Strategies

SPORTS AUTHORITY OF INDIA NETAJI SUBHAS NATIONAL INSTITUTES OF SPORTS:PATIALA DIPLOMA COURSE IN SPORTS COACHING REVISED SYLLABUS ( )

Uninformed search methods

California Pedestrian and Bicycle Safety Curriculum

Johnston - Urbandale Soccer Club U6. Coaching Curriculum

4. Please Do Break the Crystal

/435 Artificial Intelligence Fall 2015

Lesson 14: Modeling Relationships with a Line

GEOG2113: Geographical Information Systems Week 7 Mapping Hazards & Threats Practical Task

Param Express. Key Activities Concluded. Watch Out For

Learning Outcomes (How achievement will be demonstrated by pupils) See Unit of Work

Screw Gas Compressors & Dry Gas Seals Applications. Singapore, Mandarin Orchard Singapore. Training Course : Training Course For One Week In

Report on International Olympiad in Informatics (IOI) 2016 at Kazan, Russia from August 2016

HARRAP'S MICHEL THOMAS ESPAGNOL DéBUTANT. DOWNLOAD EBOOK : HARRAP'S MICHEL THOMAS ESPAGNOL DéBUTANT PDF

PADI ReActivate FAQs

Search I. Tuomas Sandholm Carnegie Mellon University Computer Science Department. [Read Russell & Norvig Chapter 3]

CO-ORGANIZED BY CHILDREN S MUSEUM OF PITTSBURGH AND THE ERIC CARLE MUSEUM OF PICTURE BOOK ART

Re: ENSC 440 Functional Specification for the Wall Climbing Robot. Dear Mr. Leung,

Chapter 4 (sort of): How Universal Are Turing Machines? CS105: Great Insights in Computer Science

Grand Slam Tennis Computer Game (Version ) Table of Contents

Results and conclusions of a floating Lidar offshore test

ME 8843-Advanced Mechatronics. Project Proposal-Automatic Bike Transmission

1001ICT Introduction To Programming Lecture Notes

2011 KIPR Autonomous Arial Vehicle Contest

Objective: Solve problems involving mixed units of length.

Kids College ~ Summer 2017 Copiah-Lincoln Community College ~ Natchez Campus

If you need to reinstall FastBreak Pro you will need to do a complete reinstallation and then install the update.

h01: Perkovic Ch1 (Introduction to CS), 2.1, 2.2 (Expr, Vars, Assignment, Strings), 2.3 (Lists, Tuples)

CS 4649/7649 Robot Intelligence: Planning

United States Coast Guard Office of Search and Rescue

Reinforce concepts of step wise logical thinking. Such as: Those learnt in 3 Std. Ref. No Reviewers: Develop logical thinking in the student.

Training Fees 3,400 US$ per participant for Public Training includes Materials/Handouts, tea/coffee breaks, refreshments & Buffet Lunch.

MoLE Gas Laws Activities

Civil Engineering Computation. Numerical Methods : Root Finding and Optimization

Student Exploration: Distance-Time and Velocity-Time Graphs

USING EASYLANGUAGE 9.X BY MURRAY A RUGGIERO JR, WILLIAM BROWER, ARTHUR PUTT

Pressure Vessel Calculation for Yavin Thruster

The Rabbit Pen Problem Created by: Angeli Tempel George Mason University, COMPLETE Math Spring 2016

The Evolution of Transport Planning

Unit 5: Prioritize and Manage Hazards and Risks STUDENT GUIDE

2018 Bratney Companies 4-H Robotics Challenge

EXIN Agile Scrum Master

Introduction ES = PEE 1. Progressive Feed Activities

Health Enhancing Physical Fitness: Students achieve and maintain a health enhancing level of physical fitness.

Sail Through Engineering Post-Workshop Activity

Powerpoint works well, but some Coaches use Microsoft Word or just hand draw.

Knots! Print This Page Critical to understanding and solving any design problem is the designer s

Uninformed Search (Ch )

Introduction. Level 1

March Madness Basketball Tournament

CS 4649/7649 Robot Intelligence: Planning

Version 3.1.0: New Features/Improvements: Improved Bluetooth connection on Windows 10

DATA SCIENCE SUMMER UNI VIENNA

Performance Task # 1

Transcription:

CMSC131 Introduction to Computational Thinking (with links to some external Scratch exercises) How do you accomplish a task? When faced with a task, we often need to undertake several steps to accomplish it. We can think of this as a set of instructions, a recipe, a strategy, an algorithm, etc. but regardless of the term we use, it is a way of expressing a series of steps to follow. 1

What language to use? Just as there are many natural languages in which we can present a series of instructions to humans (English, French, Russian, etc.) there are many computer languages available. The language is a tool that you use to convey your instructions. In CMSC131, you will be learning about how to construct instructions for a computer to follow as well as the Java language which you will use to express these instructions. In this first exercise, we will use a visual language called Scratch. The Walking Fed Imagine you needed to give directions to a generally mindless, yet somehow trained, zombie who wanted to feed on a sunflower but avoid things that would kill it. Your directions would need to be very precise since this zombie would do what you said, and only what you said. Imagine for now that you only had 3 atomic instructions available in the programming language; (1) move forward one space, (2) turn right 90, and (3) turn left 90. 2

Stay on the path! While you might want to tell the zombie in this puzzle to walk on the path until you get to the sunflower, that is not an atomic instruction. Your goal is to keep the zombie on the path? What would you give as the instructions? Stay on the path! Solution. In this case, keeping the zombie on the path and having it reach the sunflower would require the following steps: Move Forward Move Forward Move Forward Visit ter.ps/zombie01 and drag and attach three of the bricks into the workspace area, the first connected to the and then the next two under the previous one, and then click to see it work. 3

Dealing with turns! In the next challenge, your zombie needs to follow a path with turns along the way. Not only do we want to get the zombie to the flower, we also want to get it there with the fewest instructions! What would they be? Dealing with turns! Give it a try. Visit the following page and drag and click the appropriate bricks for your solution onto the workspace and then click Run to see it work. http://ter.ps/zombie02 If it doesn t work the first time, you can click on Reset and then change the bricks, and try again. 4

Dealing with turns! Solution. After the first step forward, your zombie needs to turn. You have to imagine you are the zombie when giving directions, so the zombie must turn to its left. The zombie is then ready to take another step forward. At that point it will need to turn again. This time, to its right. It is then ready for one more step forward and a yummy sunflower. Must walk further! In the next challenge, your zombie needs to follow a path with turns along the way, and the path is longer. Visit http://ter.ps/zombie03 and give it a try. 5

That was exhausting You may have noticed that, similar to in the first puzzle, you had to tell your zombie to move forward several times in a row. One of the topics that we will cover is called iteration where you can have a program do the same line(s) of code several times, which can make a program more compact and more flexible. Bigger Challenges Thinking through how to instruct a computer to solve a challenge is the first stage. Then, we use a programming language to express our instructions to a computer, and test that we are correct. There are a variety of computational thinking exercises online in Scratch, often with coding blocks made to fit the problem. You might even find the challenges at ter.ps/wonderw interesting later in the semester. 6

Programming Tools For this semester, we will explore computational thinking, problem solving, coding, and software testing using a general purpose programming language called Java to both implement and test your solutions to various challenges. As we introduce each new programming design concept, via Java, there will be new challenges assigned whose solutions can be expressed utilizing these tools. For each, your task will be to think through how you will instruct a computer to solve it, using Java. Copyright 2015-2017 : Evan Golub 7