Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
College of Science and Health Department of Computer Science Course Coverage Assessment Report Course: Instructor: Semester: CS 2300: Computer Science I_____________________________________________________________________________ _____________________________________________________________________________________________________ ______________________________________________________________________________________________________ Topics 1. 2. 3. 4. Software fundamentals Categories of programming languages Application versus system programs Editors, compilers/interpreters, and the linkage editor Source codes, object codes, and executable files Hardware fundamentals Functional units of a computer and their characteristics: CPU, main memory, secondary storage, input and output systems. Basic operations of a computer: input data, process data, and ouput of the result. Instructions execution cycle: the fetch, decode, and execute cycle. Program development environment: Windows and Visual C++ IDE or equivalent OS basics: files, secondary storage, and basic operations on files and directories. Integrated Development Environment such a Visual C++ How to run a C++ program: preprocess, compile, link, load, and execute cycle Basic elements of the C++ programming language: comments, statements, and the preprocessor directives, identifiers and keywords, Variables, basic data types, and the declaration statement. Constants and data representation. Assignment statement. Arithmetic expressions Output and formatted output using cout Input using cin Naming constants: const variables and the #define directive. Structure of a C++ program: functions and function main. Concepts of procedural and object-oriented programming Course Learning Outcome L2 L18 L1, L11, L19 L3, L4 How is topic Covered? How is Knowledge assessed? Lecture HW HandsOn Test Lab Project Comments/Suggestions About Learning Outcome and/or Topics (please use additional sheets if necessary) 5. Problem solving and algorithm development 6. 7. 8. Concept of an algorithm and algorithm specification using flowcharts and pseudocodes. Logical expressions. Problem solving using control structures: one-way selection using the ifstructure; two-way selection using the if-else-structure; counter-controlled iteration using the while/for-loop structure; multiple-way selection using the if-else structure; logically-controlled iteration using the while/for-loop structure; sentinel-controlled iteration using the while/for-loop structure. Path of program execution and software testing: tracing the execution of a program. Problem solving using more complex control structures: Multiple-way selection using the switch structure. Logically-controlled iteration using the do-while structure. Problem solving using nested if-else structures. Problem solving using nested iterations. Functions: Concept of procedural abstraction Function definition, function prototypes, and header files Calling void functions and functions that return a value. The C++ library functions Scope and lifetime of a variable Parameter-passing mechanisms: call-by-value versus call-by-reference Signature of a function and function overloading Structured program development: top-down design and stepwise refinement. Pointers and Arrays Concept of a pointer variable Pointer variables definition and initialization Using a pointer variable to access the value of a memory location. Using a pointer variable to access a memory location. Pointer parameters. Concept of an one-dimensional array Defining and referencing one-dimensional arrays. Using indexed variables and initialization of a one-dimensional array. Processing one-dimensional arrays. Passing a one-dimensional array to a function. Sorting (bubble sort/selection sort) and searching (linear search and binary search) Problem solving with one-dimension arrays Concept of a two-dimensional array Defining and referencing two-dimensional arrays. Using indexed variables and initialization of a two-dimensional array. Processing two-dimensional arrays. L5, L6, L8, L12 L7, L9, L10 L14, L15 L9, L10, L13, L16, L17 9. Passing a two-dimensional array to a function. Problem solving with two-dimension arrays Hands-on activities Formulate solutions to practical problems Develop algorithms in terms of flowchart/pseudocode Convert algorithms to C++ source code Test run the debug programs in Windows platform using the IDE of C++ such as Microsoft Visual C++ Comments/Suggestions about Prerequisites and Co-requisites: General Comments/Suggestions about the Course: L1, L5, L11, L19 Learning Outcomes 1. I am able to create, compile, and run a C++ program 2. I am able to explain the difference between high-level languages and low-level languages 3. I am able to describe the concept of a variable, and evaluate arithmetic expressions 4. I am able to write a program using simple input/output statements 5. I am able to write a simple algorithm from program specification 6. I am able to write an use simple if-else or switch statements 7. I am able to write and use nested if- else statements 8. I am able to use and write simple while or for statements 9. I am able to use and write nested while/for statements 10. I am able to combine if-else, while, and for statements 11. I am able to write, document, execute, debug and test a program in at least one program development 12. I am able to trace the flow of a given piece of code 13. I am able to write and use one-dimensional arrays 14. I am able to create a function which uses pass-by-value 15. I am able to create a function which uses pass-by-reference. 16. I am able to handle the basic concepts and implementation of arrays and pointers 17. I am able to write programs with two-dimensional arrays 18. I am able to describe the major components of a digital computer system with their functions 19. I can program a computer in C++