CMPT 201 Computer Science II for Engineers Instructor: Tina Tian
About me Email: tina.tian@manhattan.edu Office: RLC 203A Office Hours: Wednesday 11:00 - 1:00, Friday 1:45 - 2:45 Website: turing.manhattan.edu/~tina.tian/
About the Course Tuesday and Friday 11:00 - 12:15 RLC 107 Textbook: Gaddis 9th Edition (preferred) Gaddis 8th Edition Grading: 1st Midterm Exam (5th week) 15% 2nd Midterm Exam (10th week) 15% Final Exam 30% Homework Assignments 40%
Homework Assignments All are programming. Expect ~8 homework assignments Each homework may contain several programming problems.
Homework Assignments Hard copy electronic copy will not be accepted Source code Screen shot of output/test runs
Homework Assignments Homework is due a week after being announced. Collected before class begins (before 11 AM) No late work is accepted. Strict deadline! No homework is accepted after the class begins What if I couldn’t attend the class? What if I was late? Email me your homework (before 11AM) to show the timestamp Hand in a printed copy later
Advices Stay close to the computers and try out the example programs! Don’t copy code. Save your programs Google drive emails flash drive
About MS Visual Studio Integrated Development Environment (IDE) Used to develop console and graphical user interface (GUI) applications Supports C/C++, C#, VB, etc. Visual Studio Community (Free to download onto personal computers)
If you are using Mac.. Xcode https://developer.apple.com/xcode/ Free Compiler
About C++ High-level language e.g., C++, C, Java, Python, PHP, Visual Basic... Designed to be easy to read and write Low-level language e.g., assembly language ADD X Y Z Assembly language must be translated to machine language (zeros and ones) 0110 1001 1010 1011 Any high-level language program must be translated into machine language for the CPU to execute.
Compilers A program that translates a high-level language to a machine language Source code The original program in a high level language Object code The translated version in machine language
Linkers Some programs we use are already compiled A Linker combines Their object code is available for us to use For example: Input and output routines A Linker combines The object code for the programs we write and The object code for the pre-compiled routines into The machine language program the CPU can run
Algorithms Algorithm Program A sequence of precise instructions that leads to a solution Program An algorithm expressed in a language the computer can understand
Desktop testing: mentally going through the algorithm Testing: running the program on sample input data
Object Oriented Programming (OOP) Used for many modern programs Program is viewed as interacting objects Procedural vs. OOP
Some history of C++ C++ is derived from C. C developed by Dennis Ritchie at AT&T Bell Labs in the 1970s. Used to maintain UNIX systems a high-level language with many of the features of a low-level language Good for writing system programs, but hard to understand C++ developed by Bjarne Stroustrup at AT&T Bell Labs in the 1980s. Overcame several shortcomings of C Incorporated object oriented programming C remains a subset of C++
“Homework” Read Chapter 2 Download and install Visual Studio