CS 118: Principles of Programming I
Credit Hours: (3)
Instructional Method: Two hours lecture; two hours laboratory
Pre- or Corequisites: MATH 125, 138, 168, 169 or 171
A rigorous, systematic approach to object-oriented problem solving and programming.
Note(s): General Education and Scientific and Quantitative Reasoning Designated Course. Students may not receive credit for both ITEC 120 and the sequence ITEC 118:ITEC 119. Students may not attempt to take ITEC 118 more than two times (a “W” will count as an attempt).
Topics include:
1. Fundamental constructs (primitive types, variables, I/O, conditionals, loops, methods)
2. Processing strings and arrays of primitive types
3. Testing and debugging
4. Terminal input and output
Class lecture and discussion sessions present and explain problem solving techniques and standard algorithms, illustrated with examples. In the laboratory students learn, with faculty guidance, to solve programming problems and to implement their solutions. Students are also required to solve, code, test and debug problems without direct faculty guidance.
Student Learning Outcomes
Students who complete the course will be able to
1. Design, implement, test, and debug a program in an object-oriented language that uses each of the following fundamental programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and methods.
2. Apply the techniques of structured (functional) decomposition to break a program into smaller pieces, and describe the mechanics of passing parameters by value.
3. Choose the appropriate data types (primitive types, strings, objects, and arrays) for modeling a given problem
4. Write methods with parameters and return types that are primitive types, strings, objects, and arrays.
5. Test and debug programs by: Developing test cases and writing a separate driver class to test the methods of a class; desk-checking individual methods; inserting relevant print statements to discover program behavior.
6. Answer basic questions about professional and ethical considerations of developing software, information privacy, and acceptable use policies for computing in the workplace.
Student achievement is measured by written tests and evaluation of homework and programming assignments.
Reviewed and approved: June, 2022
Visit the academic calendar for upcoming dates/deadlines