Current and Prospective Undergraduates

Degree Requirements

Course Descriptions

Applying to the Major

Transferring to the U

Scholarships/ Support

Student Experience

Student Resources

Jobs & Internship Blog

CS 1400/1410 Placement Test



What is computer science?

When people think of computer science, they think of IT staff, pocket protectors, incomprehensible letter sequences, and machines that crash at a moment's notice. But the truth is that if you've used a cell phone, made a Google search, bought something on Amazon (or anywhere else), downloaded an IPhone app, seen a Pixar movie, added a friend on Facebook, watched something on Hulu, twittered, or recommended a movie on Netflix, you've been part of the computer science revolution.

Computer Science is the study of computing: the place to go to understand how best to solve problems in a step by step, methodical (yes, computer-like) manner. What can you do with a degree in computer science?

  • Build things (like a robot that can play soccer)
  • Invent things (like the next generation of search engines)
  • Create things (like the next great video game)
  • Figure out how things work (like protein folding)

Undergraduate computer science education at the University of Utah

As part of the premier research institution in the state of Utah, the School of Computing is able to prepare its undergraduates with a mix of theory and practice that prepares them not only for the computing challenges of today, but gives them the background to keep up with this rapidly changing field. Substantial flexibility is available in the curriculum, with bachelor of science degrees available in software-oriented computer science or more hardware-oriented computer engineering, a special track in Entertainment Arts and Engineering, and a five year combined B.S./M.S. program. Undergraduates considering continuing their education in graduate school have the additional opportunity to be involving in a wide variety of cutting edge research projects.


Pre-requisite checking announcement

Effective Spring 2011 semester, The College of Engineering will be enforcing prerequisite checking in the registration system for all undergraduate (below 6000) engineering courses. All pre-requisites must be met (with a C- grade or higher) before registering for a CS course (if you are currently enrolled in the pre-req, that will suffice).

At this point, the software does not recognize transfer courses as satisfying prerequisites. If you cannot register for a computer science class because you receive an error telling you that you haven't met the prerequisites, please check the prerequisites listed in the course catalog to ensure you are properly prepared for the class you wish to take.

If you have met all the required prerequisites with a C- grade or better, please complete the Computer Science Permission Code Request Form on the CS home page. If you have NOT met the required prerequisites or grade requirements, are not a full CS-major, or the class is full, special permission from the instructor is required (you should also fill out the form for these requests). Please do not send an email request to the CS advisor or the professor. All requests should be made using the form.

Co-requisites will also be enforced for CS courses. You will first need to register for the co-requisite before you try registering for the CS course, or the system will not let you register.

Best of luck, and happy registration!


ATTENTION: CS Pre-majors

Welcome to your path toward a Bachelor's Degree in Computer Science

Recently our first year curriculum has changed in order to better prepare our students for a successful academic experience in Computer Science. The first year of CS courses now consists of the following requisite chain: CS 1400 -> CS 1410 -> CS 2420. Each course must be completed before the subsequent course can be taken. The purpose of CS 1400 is to expand the understanding of students with no background in computer science topics. Students with sufficient background may be able to enroll directly in CS 1410. See below for more information.

Effective for Fall 2010, CS 1060 is no longer required for computer science pre-majors. CS 1400 has been added in place of CS 1060 as a pre-1410 course. The CS pre-major requirements are as follows:

CS 1400: Introduction to Computer Science
CS 1410: Introduction to Object-Oriented Programming
CS 2420: Introduction to Algorithms & Data Structures
MATH 1210: Calculus I
MATH 1220: Calculus II

Students should take CS 1400 fall semester, CS 1410 spring semester, and CS 2420 summer semester in order to begin the major the following fall. To determine whether you should take CS 1400 or CS 1410, please read the descriptions here. Instructions for the placement test may be found here. This test should be taken prior to enrollment in either CS 1400 or CS 1410.