260 likes | 343 Views
Introduction to Programming. Lecture No. 1. Program. “A precise sequence of steps to solve a particular problem”. Alan Perlis – Yale University: “It goes against the grain of modern education to teach children to program. What fun is there in making plans,
E N D
Introduction to Programming Lecture No. 1
Program “A precise sequence of steps to solve a particular problem”
Alan Perlis – Yale University: “It goes against the grain of modern education to teach children to program. What fun is there in making plans, acquiring discipline in organizing thoughts, devoting attention to detail and learning to be self-critical? “
Critical Skills • Analysis • Critical Thinking • Attention to Detail
Design Recipe To design a program properly, we must: • Analyze a problem statement, typically expressed as a word problem • Express its essence, abstractly and with examples • Formulate statements and comments in a precise language • Evaluate and revise the activities in light of checks and tests
PAY ATTENTION TO DETAIL • These skills are useful for anybody • All assignments in this course should follow the these guidelines
Area of the Ring Area of Outer Circle = Area of the Ring
Think Reuse • Think User Interface • Comments liberally
What is the probability that she gets exactly three letter right i.e. three Letters into their correct envelopes.
Logical Error Lewis Carol: “Through the Looking Glass” “Twas brillig, and the slithy toves Did gyre and gimble in the wabe “
Course Policy Quizzes : 10 % One Hour Tests : 30 % Lab : 5% Assignments : 5% Project : 5 % Final Test : 45%
Books • Deitel & Deitel :– C++ How to Program • Kernighan and Ritchie:- The C Programming Language
Course Objectives Objectives of this course are three fold • To appreciate the need for a programming language • To introduce the concept and usability of the structured programming methodology • To develop proficiency in making useful software using the C language
Course Contents To achieve our first two objectives we will be discussing • Basic Programming constructs and building blocks • Structured programming • Structured flowcharts, pseudo-code
Course Contents • History of C Language • Variables and expressions in C • Control structures and functions • Arrays and Pointers • Dynamic memory Allocation
Course Contents • File handling • Structures and Unions • Flavor of Object oriented programming • Sockets
Books • Text Books • How to Program – C by H.M. Dietel / P.J. Deitel • The C Programming Language by Brian W. Kernighan, Dennis M. Ritchie
Books • Reference Books (very important part) • Learning C by Neill Graham • C++, How to Program by Deitel & Deitel • Thinking in C++ by Bruce Eckel • www.cprogramming.com • www.cplusplus.com • www.howstuffworks.com • www.whatis.com
Policies • Bring your own calculator, pen paper etc.. • You will not be allowed to borrow anything from anyone during any test • Must write your name and reference number (Merit No or Regn No) in a test • No late work will be accepted (unless arrangements have been made in advance) • Ask questions; participate actively in class • You are allowed to talk to instructor only
Policies • You are responsible for what is covered in class – even if you don’t show up • Deficiency in attendance may lead to termination or relegation • You are encouraged to help each other with your homework assignments – but you must turn in your own work • If you are found to be cheating, you will fail at least the assignment / test and perhaps the entire class
Policies • If you have any learning disabilities or special needs, please let me know in advance through email or personal meeting • Check your email regularly for messages • Quizzes are unannounced
Contacts • Office: • Academic Block -II Phone 051-9280439 Ext 129 • Office Hours: • Monday 1000 – 1200 hrs • email: • dr.raihan@niit.edu.pk • Exceptional meeting: Give me an email and get time.
Course Web Page • http://www.niit.edu.pk/~dr.raihan/BICSE_5_courses.html • For CR: Please make a Yahoo/msn or Google group! • Collect and send me the email addresses of all students.