CS 100: Introduction to Computer Science

An introduction to fundamentals of computer science. Topics covered include algorithmic design; problem-solving techniques for computer programming; fundamentals of digital logic and computer organization; the role of the operating system; introductory programming methodology, including variables, assignment statements, control statements and subroutines (methods); programming paradigms; the compilation process; theoretical limits of computation; database structures; and social and ethical issues. This class may include students from multiple sections. (Natural Sciences, Elective)

  1. Describe the early human history of computation and the development of tools to aid in computation including computer science pioneers.
  2. Articulate the social and ethical implications of technology, and issues related to privacy and digital security.
  3. Describe the main parts of a modern computer and how a computer operates.
  4. Describe what an algorithm is and develop algorithms to solve problems.
  5. Demonstrate algorithmic thinking, programming, and debugging.
  6. Demonstrate working knowledge of how data is represented in the computer including common data types.
  7. Develop functions in code to make code modular.
  8. Develop and test functions which accept arguments and return values.
  9. Write code for a basic sorting algorithm, test the code and prove it works.
  10. Articulate the difference between a class and an object.
  11. Write code that instantiates an object and uses the object's methods.
  12. Write code to work with user input.
Credits
5
Lecture Hours
55
Quarter Offered
Fall,
Winter,
Spring,
Summer
Distribution List
Natural Sciences,
Academic Elective