# Sample A.B./B.E. Programs for Dartmouth Computer Science Majors

Students interested in computer science and engineering can major in Computer Science modified with Engineering, or in Computer Science with an Engineering Sciences minor, then continue to the B.E. program.

The sample programs below are examples of what can be done. Interested students should plan their programs in consultation with a professor in each department to ensure that all degree requirements are met.

## Sample A.B./B.E. Program for Computer Science Majors Plus Engineering Sciences Minors

This sample program shows the courses for the Computer Science major plus Engineering Sciences minor and the Bachelor of Engineering program with a computer engineering concentration.

### Computer Science Major

- COSC 1: Introduction to Programming and Computation
- COSC 10: Problem Solving via Object-Oriented Programming
- COSC 30: Discrete Mathematics in Computer Science
- COSC 31: Algorithms
- COSC 50: Software Design and Implementation
- COSC 51: Computer Architecture
- COSC 56: Digital Electronics (same as ENGS 31) –
*COSC 56 fulfills particular requirements for the Bachelor of Engineering* - COSC 71: Numerical Methods in Computation (same as ENGS 91) –
*COSC 71 fulfills particular requirements for the Bachelor of Engineering* - COSC 70-89: One course
- Two electives chosen from COSC 30-89, not used to satisfy another requirement
- COSC 98: Senior Design and Implementation Project, or a Senior Thesis

### Engineering Sciences Minor and Pre-B.E. Courses

- MATH 3: Introduction to Calculus
- MATH 8: Calculus of Functions of One and Several Variables
- MATH 11: Multivariable Calculus for Two-Term Advanced Placement First-Year Students OR MATH 13 Calculus of Vector-Valued Functions
- CHEM 5: General Chemistry
- PHYS 13: Introductory Physics I
- PHYS 14: Introductory Physics II
- ENGS 21: Introduction to Engineering
- ENGS 22: Systems
- ENGS 23: Distributed Systems and Fields
- ENGS 32: Electronics: Introduction to Linear and Digital Circuits

### Bachelor of Engineering (Fifth Year) Courses

- ENGS 26: Control Theory
- ENGS 27: Discrete and Probabilistic Systems
- ENGS 62: Microprocessors in Engineered Systems
- ENGS 67: Programming Parallel Systems OR ENGS 115: Parallel Computing
- ENGS 89: Engineering Design Methodology and Project Initiation
- ENGS 90: Engineering Design Methodology and Project Completion
- One from: ENGS 112: Modern Information Technologies, ENGS 128: Advanced Digital System Design, OR ENGS 147: Mechatronics

## Sample A.B./B.E. Program for Computer Science Majors Modified With Engineering

This sample program shows the courses for the Computer Science major modified with Engineering and the Bachelor of Engineering program with a computer engineering concentration.

### Modified Major

- COSC 1: Introduction to Programming and Computation OR ENGS 20: Introduction to Scientific Computing
- COSC 10: Problem Solving via Object-Oriented Programming
- MATH 3: Introduction to Calculus
- MATH 8: Calculus of Functions of One and Several Variables
- MATH 11: Multivariable Calculus for Two-Term Advanced Placement First-Year Students OR MATH 13 Calculus of Vector-Valued Functions
- PHYS 13: Introductory Physics I
- PHYS 14: Introductory Physics II
- COSC 30: Discrete Mathematics in Computer Science
- COSC 31: Algorithms
- COSC 50: Software Design and Implementation
- COSC 51: Computer Architecture
- COSC 71: Numerical Methods in Computation (same as ENGS 91) –
*COSC 71 fulfills a particular requirement for the Bachelor of Engineering* - One elective chosen from COSC 30-89, not used to satisfy another requirement
- ENGS 22: Systems
- ENGS 31: Digital Electronics
- ENGS 32: Electronics: Introduction to Linear and Digital Circuits
- ENGS 62: Microprocessors in Engineered Systems
- COSC 98: Senior Design and Implementation Project, or a Senior Thesis

### Pre-B.E. Courses

- CHEM 5: General Chemistry
- ENGS 21: Introduction to Engineering

### Bachelor of Engineering (Fifth Year) Courses

- ENGS 23: Distributed Systems and Fields
- ENGS 26: Control Theory
- ENGS 27: Discrete and Probabilistic Systems
- ENGS 67: Programming Parallel Systems OR ENGS 115: Parallel Computing
- ENGS 89: Engineering Design Methodology and Project Initiation
- ENGS 90: Engineering Design Methodology and Project Completion
- One from: ENGS 112: Modern Information Technologies, ENGS 128: Advanced Digital System Design, OR ENGS 147: Mechatronics