WELCOME TO COMPSCI 1 1 Principles of Programming

Similar documents
Interior Design 350 History of Interiors + Furniture

INDES 350 HISTORY OF INTERIORS AND FURNITURE WINTER 2017

Syllabus Foundations of Finance Summer 2014 FINC-UB

FINANCE 3320 Financial Management Syllabus May-Term 2016 *

EMPLOYEE CALENDAR NOTES

ECON492 Senior Capstone Seminar: Cost-Benefit and Local Economic Policy Analysis Fall 2017 Instructor: Dr. Anita Alves Pena

Class Meeting Time and Place: Section 3: MTWF10:00-10:50 TILT 221

MATH 1A: Calculus I Sec 01 Winter 2017 Room E31 MTWThF 8:30-9:20AM

Nutrition 10 Contemporary Nutrition WINTER 2016

CS 3516: Computer Networks

INTRODUCTION TO HEALTH PROFESSIONS HHS CREDITS FALL 2012 SYLLABUS

FINN FINANCIAL MANAGEMENT Spring 2014

FLN Learning Helping your Child succeed

Course Content Concepts

CS177 Python Programming

INTERMEDIATE ALGEBRA Course Syllabus

Computer Architecture CSC

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

Instructor Dr. Kimberly D. Schurmeier

CS 100: Principles of Computing

International Business Bachelor. Corporate Finance. Summer Term Prof. Dr. Ralf Hafner

ELEC3117 Electrical Engineering Design

Phys4051: Methods of Experimental Physics I


Department of Statistics. STAT399 Statistical Consulting. Semester 2, Unit Outline. Unit Convener: Dr Ayse Bilgin

Section 7, Unit 4: Sample Student Book Activities for Teaching Listening

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

EECS 700: Computer Modeling, Simulation, and Visualization Fall 2014

Class Tuesdays & Thursdays 12:30-1:45 pm Friday 107. Office Tuesdays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

CLASSROOM PROCEDURES FOR MRS.

Mktg 315 Marketing Research Spring 2015 Sec. 003 W 6:00-8:45 p.m. MBEB 1110

Lesson Plan. Preparation

Computer Science 1015F ~ 2016 ~ Notes to Students

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

LEGO MINDSTORMS Education EV3 Coding Activities

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

Strategic Management (MBA 800-AE) Fall 2010

BIOH : Principles of Medical Physiology

CS 101 Computer Science I Fall Instructor Muller. Syllabus

The Heart of Philosophy, Jacob Needleman, ISBN#: LTCC Bookstore:

ASTRONOMY 2801A: Stars, Galaxies & Cosmology : Fall term

ENG 111 Achievement Requirements Fall Semester 2007 MWF 10:30-11: OLSC

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

FIGURE IT OUT! MIDDLE SCHOOL TASKS. Texas Performance Standards Project

BUSINESS FINANCE 4265 Financial Institutions

MBA 5652, Research Methods Course Syllabus. Course Description. Course Material(s) Course Learning Outcomes. Credits.

POFI 1301 IN, Computer Applications I (Introductory Office 2010) STUDENT INFORMANTION PLAN Spring 2013

MATH 205: Mathematics for K 8 Teachers: Number and Operations Western Kentucky University Spring 2017

Presented by Paula Kordic, College Now Coordinator August 8, 2016 College Now Orientation

MGMT 479 (Hybrid) Strategic Management

Integral Teaching Fellowship Application Packet Spring 2018

Foothill College Summer 2016

Syllabus: PHI 2010, Introduction to Philosophy

Fall 2016 ARA 4400/ 7152

IAT 888: Metacreation Machines endowed with creative behavior. Philippe Pasquier Office 565 (floor 14)

CS Course Missive

TU-E2090 Research Assignment in Operations Management and Services

TEACHING ASSISTANT TBD

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

THE UNIVERSITY OF SYDNEY Semester 2, Information Sheet for MATH2068/2988 Number Theory and Cryptography

AHA Community Service Agency Contact Information

PSYCHOLOGY 353: SOCIAL AND PERSONALITY DEVELOPMENT IN CHILDREN SPRING 2006

Spring 2014 SYLLABUS Michigan State University STT 430: Probability and Statistics for Engineering

BIODIVERSITY: CAUSES, CONSEQUENCES, AND CONSERVATION

Course outline. Code: SPX352 Title: Sports Nutrition

Food Products Marketing

Course outline. Code: HLT100 Title: Anatomy and Physiology

Reserved Stall Procedures For Flat Lots Revised April 17, 2014

ACCOUNTING FOR MANAGERS BU-5190-OL Syllabus

San José State University

THESIS GUIDE FORMAL INSTRUCTION GUIDE FOR MASTER S THESIS WRITING SCHOOL OF BUSINESS

Welcome to WRT 104 Writing to Inform and Explain Tues 11:00 12:15 and ONLINE Swan 305

INTRODUCTION TO SOCIOLOGY SOCY 1001, Spring Semester 2013

Counseling 150. EOPS Student Readiness and Success

International Business Week - Finance

Introduction to Communication Essentials

4 th Grade Number and Operations in Base Ten. Set 3. Daily Practice Items And Answer Keys

Course Guide and Syllabus for Zero Textbook Cost FRN 210

ACCT 3400, BUSN 3400-H01, ECON 3400, FINN COURSE SYLLABUS Internship for Academic Credit Fall 2017

CVEN SUSTAINABILITY IN CONSTRUCTION

MAT 122 Intermediate Algebra Syllabus Summer 2016

Take a Loupe at That! : The Private Eye Jeweler s Loupes in Afterschool Programming

George Mason University Graduate School of Education Education Leadership Program. Course Syllabus Spring 2006

REFERENCE GUIDE AND TEST PRODUCED BY VIDEO COMMUNICATIONS

Course outline. Code: PHY202 Title: Electronics and Electromagnetism

DIGITAL GAMING AND SIMULATION Course Syllabus Advanced Game Programming GAME 2374

Re-envisioning library opening hours: University of the Western Cape library 24/7 Pilot Study

Medical Terminology - Mdca 1313 Course Syllabus: Summer 2017

Business Administration

FELLOWSHIP PROGRAM FELLOW APPLICATION

BUS 4040, Communication Skills for Leaders Course Syllabus. Course Description. Course Textbook. Course Learning Outcomes. Credits. Academic Integrity

FOREST ECOLOGY FOR 404 FALL SEMESTER 2013

Physics XL 6B Reg# # Units: 5. Office Hour: Tuesday 5 pm to 7:30 pm; Wednesday 5 pm to 6:15 pm

Mission Statement Workshop 2010

Travel report VYSOKÁ ŠKOLA EKONOMICKA. Prague, spring 2015 Mikael Mattila

BIOS 104 Biology for Non-Science Majors Spring 2016 CRN Course Syllabus

EDU 614: Advanced Educational Psychology Online Course Dr. Jim McDonald

Objective: Add decimals using place value strategies, and relate those strategies to a written method.

Course Syllabus It is the responsibility of each student to carefully review the course syllabus. The content is subject to revision with notice.

Instructor. Darlene Diaz. Office SCC-SC-124. Phone (714) Course Information

Transcription:

WELCOME TO COMPSCI 1 1 Principles of Programming At the end of this lecture, students should be able to: CompSci 101 Principles of Programming 2 Learning outcomes understand where to obtain information about COMPSCI 101 understand which parts of the COMPSCI 101 assessment contribute to the practical mark understand which parts of the COMPSCI 101 assessment contribute to the theory mark understand that to pass COMPSCI 101, both the practical part of the course and the theory part of the course need to be passed understand an algorithm Lecture 1 Introduction CompSci 101 Principles of Programming 3 We are using Canvas As well as using Canvas, COMPSCI 101 has a course website: https://www.cs.auckland.ac.nz/courses/compsci101s1c/ We will be using the Canvas Learning Management system this semester. All the material on the COMPSCI 101 website can be accessed through Canvas: https://canvas.auckland.ac.nz CompSci 101 Principles of Programming 4 The COMPSCI 101 website The COMPSCI 101 website can be reached by logging onto the Canvas website: https://canvas.auckland.ac.nz OR by going directly to the COMPSCI 101 website: https://www.cs.auckland.ac.nz/courses/compsci101s1c/ Here you will find all the information about our course set up. Get used to looking at this website for information about lecture slides, lab documents, assignment resources, assessment, people involved in the course and lots more.

CompSci 101 Principles of Programming 5 The COMPSCI 101 website Most of the resources you will need (e.g., lecture slides, lab material, assignments, course information) can be found on the COMPSCI 101 website: https://www.cs.auckland.ac.nz/courses/compsci101s1c/ Ann Cameron (Lab Supervisor) Email: ann@cs.auckland.ac.nz Phone: 9234947 Room: 303.413 CompSci 101 Principles of Programming 6 People in this course Damir Azhar(Coordinator) Email: damir.azhar@auckland.ac.nz Room: 303.411 CompSci 101 Principles of Programming 7 People in this course Adriana Ferraro Email: adriana@cs.auckland.ac.nz Phone: 9237113 Room: 303.415 CompSci 101 Principles of Programming 8 People in this course

Jing Sun Email: j.sun@cs.auckland.ac.nz Room: 303.522 CompSci 101 Principles of Programming 9 People in this course Open door policy Visit any time CompSci 101 Principles of Programming 10 Office Hours CompSci 101 Principles of Programming 11 Lecture schedule On the course information sheet there is a schedule of the lectures for COMPSCI 101. CompSci 101 Principles of Programming 12 Lecture slides will be available on the web before each lecture. Lecture Slides https://www.cs.auckland.ac.nz/courses/compsci101s1c/lectures https://www.cs.auckland.ac.nz/courses/compsci101s1c/info/courseinformation.pdf

CompSci 101 Principles of Programming 13 There is no textbook for COMPSCI 101 There is no textbook but we do have an online reference book, Think Python How to think like a computer scientist. Please be aware that we are teaching the COMPSCI 101 material in a different order to the ordering in this book. This book is a reference book, not a textbook for this course. Labs start in the second week: March 5 March 9 CompSci 101 Principles of Programming 14 Labs You must attend one 2 hour tutorial lab sessions each week. You will have enrolled in your lab time through Student Services Online. You should attend the same lab time each week. Labs are held in room 279 (Building 303S) which is on the second floor of the Computer Science building. https://www.cs.auckland.ac.nz/courses/compsci101s1c/resources/ Labs start in the second week: March 5 March 9 There are 9 labs and each lab is worth 1% of your final mark. CompSci 101 Principles of Programming 15 More about labs At your lab time you will be given programming problems to solve within the 2 hours for your lab. https://www.cs.auckland.ac.nz/courses/compsci101s1c/labs/ Every lab has two lab reflection exercises: CompSci101 Principles of Programming 16 Lab Reflection Exercises Pre lab reflection exercise to be done the weekend before the lab. Post reflection exercise to be done by the end of Friday the week of the lab. You will be asked to reflect on your understanding of the key topics covered in lectures the week before the lab. These topics will be assessed during the labs themselves. Lab reflection exercises are not graded. They are part of the lab assessment and need to be completed. All reflection exercises will be held on Code Runner 2 https://www.cs.auckland.ac.nz/courses/compsci101sc/labs/ https://www.coderunner2.auckland.ac.nz/moodle/

CompSci101 Principles of Programming 17 Lab Reflection Exercises Lab Reflection Exercises: List key topics covered in lectures the week before the lab. Visit the lab on Thursday straight after the lecture. CompSci 101 Principles of Programming 18 Before the First Lab Before the first lab you need to complete the lab preparation sheet (I will hand this out). In order to fill the sheet you need to visit the COMPSCI 101 lab on Thursday. Immediately after the lecture on Thursday I will be taking people across to the COMPSCI 101 lab. Let you keep track of the topics you understand well, those you need to work on a bit more and those you need to get help with. Compare your pre and post lab reflection exercises to assess how your understanding has changed. If there is a topic you still do not understand after a lab come and see us for help. The assignments are worth 11% of your final mark. Assignments Assignments give you the experience of solving problems on your own. Never share your code. Solve the problem on your own discuss the assignment with others but never share code. CompSci 101 Principles of Programming 19 There are 5 assignments in total worth 11% of your final mark. All assignments are due at 4:30pm on the due date. Assignments For three of these five assignments (7% of your final mark), you are required to write and submit one or more programs. Three of the five assignments are handed in using the Assignment Drop Box: https://adb.auckland.ac.nz/home/ CompSci 101 Principles of Programming 20 https://www.cs.auckland.ac.nz/courses/compsci101s1c/assignments/

Assignments CodeRunner There are 5 assignments in total worth 11% of your final mark. All assignments are due at 4:30pm on the due date. For two of these five assignments (a total of 4%), you are required to use CodeRunner. CompSci 101 Principles of Programming 21 The CodeRunner tool is designed to help you practise by presenting you with a set of coding and other exercises. Students can work with on line exercises using the Moodle learning system. https://www.coderunner2.auckland.ac.nz/moodle/ Plagiarism Plagiarism: Any work that you take credit for, but which is done by someone else. This is treated very seriously in an academic environment. CompSci 101 Principles of Programming 22 Plagiarism Information about using CodeRunner is available on COMPSCI 101 assignments web page: https://www.cs.auckland.ac.nz/courses/compsci101s1c/assignments/ https://www.academicintegrity.auckland.ac.nz CompSci 101 Principles of Programming 23 Academic Integrity The test is worth 15% of your final mark The test date and time is: CompSci 101 Principles of Programming 24 Test Tuesday 24 th April 6:30pm 7:45pm Email Damir Azhar (dazh001@aucklanduni.ac.nz), the COMPSCI 101 course coordinator, if you are unable to attend the test The test is 75 minutes long plus 5 minutes of reading time. Arrive at 6:15 because your reading time starts at 6:25pm. More about this closer to the time. https://www.academicintegrity.auckland.ac.nz

The exam is worth 65% of your final mark. CompSci 101 Principles of Programming 25 Exam PRACTICAL Labs 9% Assignments 11% Assessment CompSci 101 Principles of Programming 26 Passing COMPSCI 101 THEORY Test 15% Exam 65% https://www.auckland.ac.nz/en/for/current students/csacademic information/cs examination information.html To pass the course you MUST pass the PRACTICAL (i.e., get 10 / 20 or more) you MUST pass the THEORY (i.e., get 40 / 80 or more) On Canvas you will find: your marks class announcements lecture recordings links to the COMPSCI 101 website Piazza https://canvas.auckland.ac.nz Canvas CompSci 101 Principles of Programming 27 Piazza is a Q&A web service integrated into Canvas. You can use Piazza to ask questions that the lecturers and your classmates can discuss and answer. Please never post your own code up on Piazza! CompSci101 Principles of Programming 28 Piazza

Undergraduate Labs: There are demonstrators in these labs to help you FCL (room 191) First Floor Computer Lab This is a quiet lab CompSci 101 Principles of Programming 29 Computing resources CompSci 101 Principles of Programming 30 Learning outcomes for COMPSCI 101 determine the state of the program both during and after execution, given a code listing that may include functions and parameters, loops, conditionals and sequences, implement a given algorithm using Python, show that a program meets given specifications by writing appropriate tests, provide a useful level of documentation, in the form of program comments, for all programs developed, decompose a simple problem into several smaller tasks, compose functions that perform a specified task into a program that solves a given problem. Algorithms A finite set of steps that specify a sequence of operations to be carried out in order to solve a specific problem. A better definition: CompSci 101 Principles of Programming HOW TO GET TO UNI CompSci 101 Principles of Programming 32 Algorithms what kind of steps? An algorithm is a well defined, unambiguous sequence of steps An algorithm is a well defined, unambiguous sequence of steps sequential operations Walk to the bus stop at the shops up the road Get on bus number "101" Pay the bus driver $4.50 Get off at the Symonds St bus stop Walk 200m to the Computer Science building 31

HOW TO WALK TO THE BUS STOP CompSci 101 Principles of Programming 33 Algorithms what kind of steps? An algorithm is a well defined, unambiguous sequence of steps HOW TO PAY THE BUS FARE CompSci 101 Principles of Programming 34 Algorithms what kind of steps? An algorithm is a well defined, unambiguous sequence of steps conditional operations [ Open the front door IF it is raining THEN take an umbrella iterative operations [ Open wallet WHILE you still haven't paid enough give the driver another coin Walk down the driveway and turn left Take a seat Walk 50m down the street CompSci 101 Principles of Programming 35 Basic programming steps Programming Step 2 write the code CompSci 101 Principles of Programming 36 We will use the Python programming language to implement our algorithms TASK 1. design ALGORITHM ALGORITHM 2. coding 2. coding CODE 3. testing PROGRAM Python CODE

+---+ ========= CompSci 101 Principles of Programming 37 Hangman algorithm Enter a letter: d +---+ 0 / \ / \ ========= Word: l a b o n e s Letters Missed: r m k c u d Letters Guessed: a e s n o l b Letters Available: fghijpqtvwxyz Word: _ Sorry, you have lost in the game of Letters Missed: Hangman... Letters Guessed: The word was lazybones Letters Available: abcdefghijklmnopqrstuvwxyz Enter a letter: a