Queens College, CUNY,Department of Computer Science
INTRODUCTION TO ALGORITHMIC PROBLEM SOLVING CSCI 111
Instructor: Aryeh Greenberg
Course Description Programming algorithms in the C++ language using basic data types and arrays.
It is highly recommended that you bring your own laptop to the lecture with Microsoft Visual Studio 2019 or greater Installed on it as this is the environment that the lecture will be presented with.
Credits: 2 lec., 2 lab. hr.; 3 cr.
Optional text Brian Overland, C++ without fear
procedures and functions
scope and lifetime of variables
1D, 2D, and 3D arrays
Pointers (except as needed to pass arrays to functions) concepts of object, class, and method (except Cout class)
Topics in Detail
Creating your first Hello World program
Explanation of C program layout; header files, include directives, program return values
Compiled vs. Interpreted. Managed versus Un-Managed.
Pre-compiler, compiler, linker
High vs Low Level Languages
Cout an example of an object
Difference between C and C++ (we will using some C++ features but not too many)
Using Cout and Cin
STL Standard Template Library
Program can be divided into two parts: Data and Code
The CPU views everything as a number.
Values in a variable can be upgraded not downgraded
String many characters located next to each other in memory with a terminating null character
True and False in C
Loops & Conditional Loops
String array - (array of char)
1D, 2D, and 3D Arrays
Learning Goals. A solid understanding of the fundamental concepts of programming in C++. Successful students will be able to write correct and complete C++ implementations of projects assigned in lab sessions. Successful students will also complete exam questions that require the writing, reading and analysis of C++ programs and portions of C++ programs.
Instructor: Aryeh Greenberg email@example.com office hours: after class or remotely using screen sharing software.
Fall Session 2020 - Aug 26, 2020- Dec 20, 2020
Lecture/Lab: MoWe 7:30PM 9:20 PM
Two midterm exams and final exam + Lab homework. All exams require manual coding.
Final Grade =
60% = Highest 2 grades of: Midterm 1, Midterm 2 & Lab
40% = Final
After the final, those who receive a grade of C- or below are eligible for an oral test to improve their final grade.
In the Fall, 50% of the lab grade consists of daily assigned homework. Homework must be submitted online though a link on the introtocplusplus web site one hour before the next lecture. Homework will be randomly graded, that is, it is not possible to grade every homework on a daily basis, but a certain percentage will be graded. Homework is graded on an effort basis, That means if a student corrects their mistakes, they will always get a 100. The other 50% of lab grade will be through 2 3 lab quizzes.
Every student will receive a unique Class ID so they can see their grades. Each student will be emailed their Id at the address identified by them in CunyFirst.
Midterm 1 is usually easier than Midterm 2.
Policy: Academic dishonesty such as plagiarism or cheating will be dealt with seriously in accord with the Universitys policy on academic integrity.