Programming In C++

CSE 2050
Florida Institute of Technology
Instructor: Debasis Mitra


Department: Computer Sciences

Abstract

Learning a second programming language is essential for three reasons: (1) learning how to learn, (2) to understand principles behind a language design, and (3) to be more flexible in the job market.



The syllabus is: here,

Florida Tech Student Handbook on Cheating and Paligiarism: http://www.fit.edu/studenthandbook/print.php#policy_2490

Suggested book: Stroustrup: "Programming: Principles and Practice using C++ (Second Edition)" Addison-Wesley 2014, ISBN 978-0-321-99278-9. http://www.stroustrup.com/Programming/

Materials are mostly from: cplusplus.com
The site of Soloearn app for learning languages on a smartphone.(Acknowledgement: Eric Vale, for finding this.)

WARNING:
Disclaimers to the lecture notes:
THESE NOTES ARE FOR HELPING YOU TO GET STARTED. YOU LEARN A LANGUAGE BY CODING, NET SURFING AND BY READING ANY BOOK.

+++++++++++++++++++ Lecture Notes +++++++++++++
Basics from cplusplus.com, a summary
Basic File I/O
Functions a summary
C++ Containers, a summary
Pointers, a summary
Dynamic Memory
Struct and User-defined types
Class in C++, a summary
Class Inheritance in C++, a sample virtual function use
Object orientation. GPU basics
Type conversion in C++ (slides not looking good on MAC keynote!)
Exception or error handling in C++
Pre-processor directives
Streaming input-output (with files)
More on input-output from Stroustrup

Design example of Vector container type in C++, up to slide 33 (from the recommended Text by Stroustrapp, not in cplusplus.com tutorial)
C vs C++ (from Stroustrapp's recommended Text)
C++ vs Java

=================== Spring 2019 ====================
Class 9:30am-10:45am TR George M.SkurlaHall 102
Students needing special accommodation per FIT declaration, identify yourself personally to me as soon as you can.

Continuously updated schedule for: Spring 2019
Aggregate grading formula and letter-grades' cutoff are on the this plan table.
Final exam partly on Canvas (60 points, 100 min) and one question for write-in (8 points, 10 min), in class. Bring your laptop / smart phone.

Assignment-5: here, and some explanation here
Gauss-Jordan algorithm for matrix inversion

<<<<<<<<<<<<<<<<<<<< Spring 2018 >>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<< <<<<< >>>>> >>>>>>>>>>>>>>>>>>
Class TR 9:30 am - 10:45 am Olin Science Bldg 144
Continuously updated schedule for: Spring 2018

Programming assignment 1
Programming assignment 2
Programming assignment 3
Programming assignment 5
Key for Final,
RESOURCE INFO: How to access U-drive that is code01.fit.edu? Here is an FIT IT site that I found by Googling.
------------------------ Fall 2017 --------------------
Class 8:00 am - 9:15 am TR Frederick C. Crawford Bldg 230
Students needing special accommodation per FIT declaration, identify yourself personally to me as soon as you can.

Continuously updated schedule for: Fall 2017

An erroneus code for you to fix.
Compilation help
Unix Commands, a useful selected list

-------------- Resources:
Sample Codes: http://www.cs.indiana.edu/ ~sabry/teaching/intro/fa96/code/
Lecture notes: http://www.stroustrup.com/Programming/
Textbook's codes as a zip file.
C++.com tutorials.
My notes from cplusplus dot com on Inheritance and next, polymorphism
Some sample codes in .cpp on memory leak from Marcello Tomasini: allocation, hugeDestroyer, fib-1, fib-2, fib-3, fib-4
On constructor chaining, here, and another one from IBM

-----------------------------

E-mail: dmitra@cs.fit.edu