introduction to computer programming i cse 113 gaurav kumar
Post on 18-Dec-2015
234 Views
Preview:
TRANSCRIPT
Introduction to Computer Programming ICSE 113
Gaurav Kumar
CSE 113 – Introduction toComputer Programming I
• Instructor: Gaurav Kumar• Office: 113V Davis Hall• Email: gauravku@buffalo.edu• Email you send me should be from your UBIT
email account and should include your full name and which course you are taking.
CSE 113 – Introduction toComputer Programming I
• Office Hours– Monday 12:00 - 1:00PM
Wednesday 12:00 - 1:00PM
Information on the Web
• All course content will be on the coursewebsite: http://www.buffalo.edu/~gauravku/summer/CSE113• UBLearns will be used to post course grades.
Course Structure
• Lecture (6 hours each week)– Monday, Wednesday 2:00 PM – 4:55 PM
• Recitation/Lab (2 hours each week)– Monday, Wednesday 5:00 – 5:50 PM
• You should be registered for a recitation section and a lecture.• Recitations do not meet on 06/25.
Course Description andPrerequisites
• This course is an introduction to computer programming for non-majors.Intended computer science or computer engineering students should not take this course.
• There are no prerequisites for this course, but you should have some familiarity with a computer (that is, you should have used one before).
Course Grades
• 45% - Exams– Three in-class exams. Dates will be posted on the
course website.• 35% - Programming Exams (2)– Two practical exams.– Dates will be listed on course website.
• 20% - Programming Assignments– 6 lab assignments each worth 2.5% of your grade. One
to 6 practice assignments worth a total of 5% of your course grade.
Textbook
• Michael Kölling – Introduction to Programming with Greenfoot: Object oriented Programming in Java with Games and Simulations
• The package (paper book and eBook) is available at the University Bookstore, Greeks and Sneaks, Amazon.
Course Grades
• Important Note:– If you do not attempt the second practical exam,
the highest grade you can earn in the course is an F.
– You will not be allowed to take the second practical exam if your grade on ANY of the 6 programming assignments is below 50%.
Letter Grades
• There is no curve on the course grades. If your average falls in between the cutoffs, that is your grade.
Score 90-100 85-89 80 –84 75 –79 70 –74 65 –69 60 –64 55 –59 50 –54 0 –49
Grade A A- B+ B B- C+ C C- D F
Course Policies
• Re-grading – any questions about graded work must be raised within one week of the return of the work.
• Incompletes – we will follow the university’s policy on incompletes –unless you meet the criterion, you will not get an incomplete.
• Disability Services – If you are registered, please bring me the letter indicating your accommodations.
• Athletics – If you are an athlete, please come to speak with me about how that will effect this course this semester.
Course Policies
• Disruption/Behavior in the Classroom– Take note of the University’s policy on thisissue (in syllabus)– Be respectful of each other
• Academic Integrity– Breaches of academic integrity will be investigated and
punishments imposed in accordance with the University’s policies AND my department’s policies.
– My department’s policy is that ANY breach of academic integrity is punished with an F in the course (no more lenient punishments allowed).
FAQ
• Where are the slides posted?
CSE 113 - Announcements
• Pick up (and READ) syllabus if you have not already done so.
• No recitations meet today.
CSE 113 16
Quiz 1
What is Computer Programming ?Convincing the computer to never freezeSetting the alarm on a computerTelling the computer what to do through a
special set of instructionsSpeeding up your computer
CSE 113 17
Quiz 1
What is Computer Programming ?Convincing the computer to never freezeSetting the alarm on a computerTelling the computer what to do through a
special set of instructionsSpeeding up your computer
CSE 113 18
What Computer Understands ?
CSE 113 19
What Computer Understands ?
CSE 113 20
What Computer Understands ?
CSE 113 21
What Human Understand?
CSE 113 22
What Human Understand?
CSE 113 23
What Human Understand?
CSE 113 24
Solution
Bridge – Call it a Translator
CSE 113 25
Flow
Compiler Object Code
Source Code Linker
Library
Executable Code
High Level Language
Machine Language
CSE 113 26
Bug
Actual Bug found in Mary II , a Computer in Harvard Lab
CSE 113 27
Architecture
Memory
ALUControl Unit
InstructionsInstr1Instr2Instr3Instr4
….
Input Output
PC
CSE 113 28
Terms
• Algorithm – Recipes / Set of steps• Source code - Actual text used to write the
instructions for a computer program• Compiler - software tool that translates source code
into data that the computer can understand• Data type - classification of pieces of information in a
program• Variable - container which represents a value in a
program• Constant – It’s a CONSTANT
CSE 113 29
More Terms
• Conditional - Set of code that will execute only if a certain condition is true
• Array - A list of related values• Loop - Segment of code that executes
repeatedly• Function - Set of code used to carry out specific
tasks• Class - Template for a real world object to be
used in a program
CSE 113 30
Syntax vs Semantics
• Syntax – Not abiding by the guidelines/ set of rules
• Semantic – Meaningful. ( Logical )
• Cow Dog Giraffe – Syntax Error for writing a sentence in English Language
• My desk’s name is Gaurav – Semantically Wrong
CSE 113 31
Quiz 2
Ask user for a number, ask user for another number, multiply the two numbers, print result.. What do you call this set of instructions? Instructions Code A compiler An algorithm
CSE 113 32
Quiz 2
Ask user for a number, ask user for another number, multiply the two numbers, print result.. What do you call this set of instructions? Instructions Code A compiler An algorithm
Programming Language
• Language we can use to write computer programs.
• Similar to and different from natural language
Similarities to NaturalLanguage
• Syntax - Grammar• Semantics - Meaning• Written down• Read
Differences from NaturalLanguage
• Rarely spoken
Tools
• Editor – Place to type the program• Compiler - Translator• Execution Environment
top related