|
Nov 27, 2024
|
|
|
|
CSCI 1081 - Programming Fundamentals Credits: 4 Hours/Week: Lecture 4 Lab None Course Description: This course introduces the fundamental concepts, structures, and techniques of programming. Topics include introduction to algorithms, design and development, and the fundamental constructs of programming and data. Students will use a modern integrated development environment to create complex, multi-file projects. The course also introduces students to numerical applications (using MATLAB), machine architecture and object-oriented programming. Differences between the C and C++ language are presented. MnTC Goals None
Prerequisite(s): Course placement in MATH 1061 or above, or completion of MATH 0070 with a grade of C or higher or instructor consent. Corequisite(s): None Recommendation: CSCI 1058 or CSCI 1060 or a beginning course in programming
Major Content
- Overview of programming languages and survey of programming paradigms
- The program creation process including editing, pre-processing, compiling, linking, executing
- Introduction to machine level organization and representation of numeric and text data
- Syntax and semantics of fundamental programming constructs including variables, operators, expressions, assignments, conditional and iterative control structures, functions, I/O, files, objects
- Creation of multi-file programming projects
- Fundamental data types and structures including primitive types, pointers, arrays, structures and strings
- Basic algorithms and their application to solve programming problems
- Use of a modern integrated development environment including compiler, debugger, test and project management tools
- Language support for numerical computing and engineering applications
- Introduction to fundamental design concepts including requirements analysis, structured design, modular decomposition, structure charts, pseudocode.
- Introduction to MATLAB numerical computing tool and creation of simple programs to solve basic problems.
- C Programming language
- Introduction to object-oriented programming
Learning Outcomes At the end of this course students will be able to:
- develop a program of moderate complexity.
- explain fundamental programming constructs, data types and structures through their appropriate use in programs or program segments.
- use appropriate algorithms and problem-solving techniques in program development.
- use a programming development environment and associated tools in creating programs.
- explain related concepts such as computer architecture, data representation, program translation and run-time models.
- use appropriate language features to solve engineering and scientific problems.
- write a simple MATLAB application to solve a numerical computing problem.
- convert a C++ program to an equivalent program in C.
- explain what an object is and how it relates to a class.
- write methods that get, set and test object data.
- develop a simple object-oriented program.
- apply consistent documentation and program style standards that contribute to the readability and maintainability of software
- write programs that uses file I/O to provide persistence across multiple executions.
Minnesota Transfer Curriculum (MnTC): Goals and Competencies Competency Goals (MnTC Goals 1-6) None Theme Goals (MnTC Goals 7-10) None
Courses and Registration
Add to Portfolio (opens a new window)
|
|