This is a first course in computer programming for students with no prior experience. Students will learn the core process of programming: given a problem statement, how does one design an algorithm to solve that particular problem and then implement the algorithm in a computer program? The course will also introduce elementary programming concepts like basic control concepts (such as conditional statements and loops) and a few essential data types (e.g., integers and doubles). Exposure to programming will be through a self-contained user-friendly programming environment, widely used by the scientific and engineering communities, such as Matlab. The course will cover problems from all fields of science, engineering, and business.
This is an introductory programming course using the Java language. The topics include: basic facts about object-oriented programming and Java through inheritance and exceptions; recursion; UML diagrams and how to read class diagrams; ethics in computer science; and some basic understanding about computer systems: the compile/link/interpret/ execute cycle and data representation. Close
In this course, students explore the tools and techniques of advanced writing and research. Students write four research papers and give several oral presentations. This course is required for single degree B.A. students and strongly recommended for double degree students.
A year-long sequence from Group A: literature and philosophy and a year-long sequence from Group B: history and social science is required for each of the first two years.
(2)
One year of mathematics is required. One year of science courses is required (either 3-0-3 or 3-3-4). In the program schedule it is assumed the mathematics courses are taken in the freshman year and the science courses in the sophomore year, but the order may be reversed if prerequisites are met.
(3)
Secondary concentration courses and electives can be 3-0-3 or 3-3-4.