EECE.2160 ECE Application Programming

Slides:



Advertisements
Similar presentations
Microprocessor Systems Design I
Advertisements

CHEMISTRY Professor Richard Karpeles. Spring 2014 Chemistry 2 (84.122) Dr. Richard Karpeles Olney Hall 502A (978)
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
1 Agenda Administration Background Our first C program Working environment Exercise Memory and Variables.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
ECE Application Programming Instructors: Dr. Michael Geiger & Nasibeh Nasiri Fall 2015 Lecture 2: Basic C program structure Data in C: Data types,
Computer Programming A simple example /* HelloWorld: A simple C program */ #include int main (void) { printf (“Hello world!\n”); return.
CSc 120 Introduction to Computer Programing II
All important information will be posted on Blackboard
Microprocessor Systems Design I
ECE Application Programming
Software Requirements
ECE Application Programming
ECE Application Programming
Introduction to Programming
ECE Application Programming
ECE Application Programming
EECE.2160 ECE Application Programming
ECE Application Programming
ACIS 3504 Accounting Systems and Controls
ECE Application Programming
CSC 135 section 60 or CSC Fall 2017.
Microprocessor Systems Design I
EECE.2160 ECE Application Programming
Algorithms Problem: Write pseudocode for a program that keeps asking the user to input integers until the user enters zero, and then determines and outputs.
Welcome to MATH FALL 2016.
Course Overview CSE8313 Object-Oriented Analysis and Design
Course Information and Introductions
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1301! Principles of Programming I.
Programming Fundamentals Lecture #3 Overview of Computer Programming
Physics 100 Energy Spring 2011.
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
ACIS 3504 Accounting Systems and Controls
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.3220 Data Structures Instructor: Dr. Michael Geiger Spring 2017
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
Course Overview CSE5319/7319 Software Architecture and Design
EECE.4810/EECE.5730 Operating Systems
EECE.3220 Data Structures Instructor: Dr. Michael Geiger Spring 2019
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.3220 Data Structures Instructor: Dr. Michael Geiger Spring 2019
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
EECE.2160 ECE Application Programming
Presentation transcript:

EECE.2160 ECE Application Programming Instructors: Dr. Michael Geiger & Dr. Lin Li Spring 2019 Lecture 1: Course overview Program basics

ECE Application Programming: Lecture 1 Lecture outline Announcements/notes Chapter 1 exercises due Monday, 1/28 Program 1 due Wednesday, 1/30 10 points: register for access to the course textbook 10 points: introduce yourself to your instructor 30 points: complete simple C program Today’s lecture Course overview Instructor information Course materials Course policies Resources Introduction to C programming Basic C program 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Course instructors Dr. Lin Li (Section 201) E-mail: Lin_Li@uml.edu Office: 402 Ball Hall (desk #17) Office hours: MW 9:30-11 AM Dr. Michael Geiger (Section 202) E-mail: Michael_Geiger@uml.edu Phone: 978-934-3618 (x43618 on campus) Office: 301A Ball Hall Office hours: MWF 1-1:50 PM, TTh by appointment Additional instructional support Tutoring through CLASS center Grader TBD 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Course materials Required Textbook: Programming in C with zyLabs, EECE.2160, Spring 2019 Electronic textbook + IDE for writing programs 10% of grade assigned to exercises from text To access text: Sign in or create account @ learn.zybooks.com Enter zyBook code: UMLEECE2160GeigerSpring2019 Subscribe ($77 this term; lasts until 5/25/19) Textbook registration requires you to supply student.uml.edu e-mail address Section in which you are enrolled May want to use other IDE (Visual Studio, xCode) Directions on use to be posted to web 4/16/2019 ECE Application Programming: Lecture 1

Additional course materials Course websites: http://mjgeiger.github.io/eece2160/sp19/index.htm http://mjgeiger.github.io/eece2160/sp19/schedule.htm Will contain lecture slides, handouts, assignments Discussion group through Blackboard Do not post code to the discussion group All course announcements will be posted on Blackboard as well 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Grading and exam dates Grading breakdown Programming assignments: 50% No programs will be dropped Textbook activities: 10% Participation activities: 5% Challenge activities: 5% Lowest of first 2 exams: 10% Highest of first 2 exams: 15% Exam 3: 15% Exam dates Exam 1: Friday, February 22 in class Exam 2: Monday, April 1 in class Exam 3: Date/time TBD (during finals; common exam) 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Academic honesty All assignments are to be done individually Don’t share code with one another Don’t write programs together Any copied solutions, whether from another student or an outside source, are subject to penalty 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Textbook activities Activities associated with each lecture Must be completed within 3 days of lecture Activities completed >3 days after lecture: 0 credit No extensions given for these activities Two activity types Participation activity: may retry until correct Challenge activity: problems may change if incorrect certain number of times 4/16/2019 ECE Application Programming: Lecture 1

Programming assignments Will submit all code through textbook IDE Brief “submission” to Blackboard for style grading Penalty after due date: -(2n-1) points per day i.e., -1 after 1 day, -2 after 2 days, -4 after 3 days … Grading generally split as follows: 60%: Code compiles & generates correct output Output correctness auto-graded within textbook IDE 40%: Programming style Instructor/grader will examine code and grade accordingly May resubmit each program once for regrade 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Course “rules” A couple of unofficial rules: Please address your instructor appropriately For example, “Dr. Li” or “Professor Geiger” Please don’t talk when I’m talking Doing so distracts your classmates and me If you have a question, please raise your hand and ask—I want questions during lecture! 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Course questions General notes/questions about the course: How many of you have prior programming experience? If so, hopefully you become a better programmer If not, don’t worry—course assumes no prior programming experience Fair warning for all of you: material builds on itself throughout course Difficulty increases as course goes on If (when) you get stuck, ask for help!!! 4/16/2019 ECE Application Programming: Lecture 1

Course questions (continued) How many of you are taking this course only because it’s required? Follow-up: how many of you hope you’ll never have to program again once you’re done with the course? Both computer and electrical engineers commonly program in industry—some examples: Automation of tasks Circuit simulation Test procedures Programming skills highly sought by employers 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program # indicates pre-processor directive include is the directive stdio.h is the name of the file to "insert" into our program. The <> means it is part of the C development system #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program main is the name of the primary (or main) procedure. All ANSI C programs must have a main routine named main The () indicates that main is the name of a procedure. All procedure references must be followed with () #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program { } enclose a "block". A block is zero or more C statements. Note that code inside a block is typically indented for readability—knowing what code is inside the current block is quite useful. #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program printf() is a "built-in" function (which is actually defined in stdio.h). "Hello World!" is the string to print. More formally, this is called the control string or control specifier. #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } Every statement must end with a ";". Preprocessing directives do not end with a ";" (but must end with a return). 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program The \n is an escape character used by the printf function; inserting this character in the control string causes a “newline” to be printed—it’s as if you hit the “Enter” key #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Our first C program The int tells the compiler our main() program will return an integer to the operating system; the return tells what integer value to return. This keyword could be void, indicating that the program returns nothing to the OS. #include <stdio.h> int main() { printf("Hello World!\n"); return 0; } 4/16/2019 ECE Application Programming: Lecture 1

ECE Application Programming: Lecture 1 Final notes Next time: Continue basic C program structure IDE demonstrations zyBooks IDE Visual Studio Reminders: Chapter 1 exercises due Monday, 1/28 Program 1 due Wednesday, 1/30 10 points: register for access to the course textbook 10 points: introduce yourself to your instructor 30 points: complete simple C program 4/16/2019 ECE Application Programming: Lecture 1