TEL-W16 Final Project Presentation Teaching Logics/Algorithms

Slides:



Advertisements
Similar presentations
The LC-3 – Chapter 6 COMP 2620 Dr. James Money COMP
Advertisements

Programming with Alice. Getting Started with Alice Alice is a free programming language – Named in honor of Lewis Carroll – See web page for download.
Basics of Computer Programming Web Design Section 8-1.
© Janice Regan Problem-Solving Process 1. State the Problem (Problem Specification) 2. Analyze the problem: outline solution requirements and design.
Computer Software & Software Development H&K Chapter 1 Instructor – Gokcen Cilingir Cpt S 121 (June 20, 2011) Washington State University.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Algorithm Design CS105. Problem Solving Algorithm: set of unambiguous instructions to solve a problem – Breaking down a problem into a set of sub- problems.
Outline Chapter 1 Hardware, Software, Programming, Web surfing, … Chapter Goals –Describe the layers of a computer system –Describe the concept.
Chapter 1 Program Design
Chapter 2: Algorithm Discovery and Design
 A set of objectives or student learning outcomes for a course or a set of courses.  Specifies the set of concepts and skills that the student must.
Exploring the Normal Distribution Rick Luttrell James Price South Iredell High School.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Introduction to Programming. What is a Program  Set of Instructions that tells the computer what to Do.  Driving force behind the computer  Without.
Purpose of study A high-quality computing education equips pupils to use computational thinking and creativity to understand and change the world. Computing.
Getting Started With Alice. Why Learn about Programming computers. Learning to program a computer does not turn you into a nerd We will use Alice which.
TMF1013 : Introduction To Computing Lecture 1 : Fundamental of Computer ComputerFoudamentals.
By the end of this session you should be able to...
CS1501. What is a computer program? A set of instructions to tell the computer what to do It can be elegant! Not only a way to tell a computer what to.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
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.
8.1 8 Algorithms Foundations of Computer Science  Cengage Learning.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Problem-solving with Computers. 2Outline  Computer System  5 Steps for producing a computer program  Structured program and programming  3 types of.
1 UMBC CMSC 104, Section Fall 2002 Functions, Part 1 of 3 Topics Top-down Design The Function Concept Using Predefined Functions Programmer-Defined.
Programming in Alice IT-IDT-9 Design, develop, test and implement programs using visual programming. 9.1 Utilize drag and drop software to develop programs.
Evolution of C and C++ n C was developed by Dennis Ritchie at Bell Labs (early 1970s) as a systems programming language n C later evolved into a general-purpose.
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.
CMSC 104, Section 301, Fall Lecture 18, 11/11/02 Functions, Part 1 of 3 Topics Using Predefined Functions Programmer-Defined Functions Using Input.
Progression in KS3/4 Algorithms MONDAY 30 TH NOVEMBER SUE SENTANCE.
1 Structured Programming Arab Academy for Science and Technology CC112 Dr. Sherif Mohamed Tawfik The Course.
Introduction to the course Aug 30, Day 1 Object-oriented Programming thru Video Games TIDE 1840 Harry Howard Tulane University.
Integrating Algorithms and Coding into the Mathematics Classroom
Principles of Programming & Software Engineering
Learning outcomes 5 Developing Code – Using Flowcharts
Advanced Computer Systems
ICS 3UI - Introduction to Computer Science
Algorithms and Problem Solving
CSC 222: Computer Programming II
Topic: Programming Languages and their Evolution + Intro to Scratch
Basics of Computer Programming
Lecture 1 Introduction Richard Gesick.
Data Structures and Algorithms
CMPT 120 Topic: Functions – Part 4
Basics of Computer Programming
Looping and Random Numbers
Basics of Computer Programming
Computational Thinking in the Classroom
Basics of Computer Programming
Programming Fundamentals
Little Coders Computational Thinking in K-2 Classrooms
An Introduction to Visual Basic .NET and Program Design
Foundations of Computer Science
Science For All February 16, 2012.
Chapter 10 Programming Fundamentals with JavaScript
Computational Thinking in Learning
Programming Fundamentals (750113) Ch1. Problem Solving
Chapter 1 Introduction(1.1)
Exploring the Normal Distribution
Algorithm and Ambiguity
Algorithms and Problem Solving
A programming language
ICT Gaming Lesson 2.
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming.
Welcome to Mountain View Elementary School!
Quiz: Computational Thinking
Hour of Code Code.org/lightbot
Presentation transcript:

TEL-W16 Final Project Presentation Teaching Logics/Algorithms Elnaz Delpisheh

Outline Problem Statement Solutions- Technologies Meeting Core Principles Addressing Accessibility and Usability Issues Resources

BTP100- Programming Fundamentals Using C This course covers Fundamental principles of computer programming Problem solving strategies using structured programming techniques

BTP100-Learning Outcomes Design functions using selection and iteration constructs to solve a programming task. Connect functions using pass-by-value and pass-by-address semantics to assemble a complete program. Design collections using arrays and structures to manage data efficiently. Code algorithms using standard library functions to incorporate existing technology. Stream data using standard library functions to interact with users and access persistent text. Trace the execution of a procedural program to validate its correctness. Develop algorithms using procedural programming concepts to communicate coding plans. Code complete programs using appropriate object and pointer types to implement specified coding plans. Explain the purposes of procedural programming features to inform business persons.

What should a programming course teach? Algorithmic thinking and expression: being able to read and write in a formal language. Abstraction: learning how to communicate complex ideas simply and to decompose problems logically. Appreciation of elegance: realizing that although there are many ways to solve a problem, some are inherently better than others.

Fundamental ideas of programming A list of instructions Conditional statements Repeating behavior Breaking things up into smaller pieces Compute a result

A list of instructions Wearing shoes: Example “put on your left sock, then put on your right sock, then put on your left shoe, then put on your right shoe.” Computer Scientists call this Sequential processing.

Repeating behavior Example “Stomp your foot five times” or “WHILE there are cookies on the plate, keeping eating cookies” Computer Scientists call this looping, iteration, or recursion.

Breaking things up into smaller pieces Example “The way we're going to clean the house is to first clean the kitchen, then we'll clean the bathroom, then we'll clean each of the three bedrooms one at a time.” Computer Scientists call this problem decomposition, step-wise refinement, or top-down design.

Note It is very important to learn how to arrange a sequence of instructions to carry out a task.

Solutions- 1 https://code.org Launched in 2013, Code.org is a non-profit dedicated to expanding access to computer science. Code.org uses a drag and drop environment to create computer animations using 2D models.

Solutions- 2 Alice Alice is a free-ware object-based educational programming language with an integrated development environment (IDE). Alice uses a drag and drop environment to create computer animations using 3D models. https://www.kidscodecs.com/alice-tutorials/

Solutions- 3 Robot-VEX We hope the motivational effects of robotics excites students about programming.

Workshop 1 Learning outcome: Complete an hour of code Describe fundamentals of programming using code.org. Complete an hour of code from the following link: https://studio.code.org/s /starwarsblocks/stage/1/ puzzle/1

Workshop 1-(Cont.)

Workshop 1-(Cont.)

Workshop 1-(Cont.)

Workshop 1-(Cont.)

Workshop 4 Learning outcome: Design functions using selection and iteration constructs to solve a programming task. Design your robot to take few steps forward.

Workshop 4- Sample Code task main() { wait1Msec(2000); motor[rightMotor] = 100; motor[leftMotor] = 100; wait1Msec(3000); }

Swing turns task main() { wait1Msec(2000); motor[rightMotor] = 0; motor[leftMotor] = 127; wait1Msec(750); motor[rightMotor] = 127; motor[leftMotor] = 0; }

Addressing Seneca's core principles Principle 3: “Offering high- quality, relevant programs and pathways” We provide flexible delivery strategies to meet the varied needs of students. Principle 4. “Committing to Teaching Excellence” We use technology to engage more (first-semester) students. We are committed to experiential learning.

Addressing accessibility and usability issues Using Integrated Development Environment (IDE).

Addressing accessibility and usability issues(Cont.) Automatic code formatting (Colors, highlighted keywords, indentation) Design Conventions Compiles Code Automatic code generation Warning-as-you-type Integrated debugging

Resources Wanda P. Dann, Stephen Cooper, Randy Pausch, Learning to Program with Alice, 2005. http://snap.berkeley.edu/snapsource/snap.html http://www.alice.org/index.php http://www.vexrobotics.com/ http://www.senecacollege.ca/about/reports/academic- plan/committing-to-senecas-core-literacies.html