Introduction to Computer Science


Dear student,

You are starting to learn about computation and its purpose. This course covers the same materials as an introductory class for undergraduate computer science majors. Its curriculum, which includes software, hardware and algorithms, resembles that of a one- or two-semester first-year college course or the high school Advanced Placement (AP) Computer Science. It does not require a formal computer science background.

There is also a gentler Introduction to Computers for non-majors, and a basic course focusing on programming that is taught in several computer languages.

The rewards of taking this course are immense. In addition to being a subject in itself, computer science can be applied to almost any other discipline from accounting to zoology. The job prospects for computer scientists and computer engineers are excellent.

Be patient in your studies, and don't get too frustrated if you are stuck on one part of a programming assignment or confused about a concept. Struggling with the materials is a normal and essential part of the learning process. You're probably better off going through the course sequentially and consulting external references as needed. Each lesson, particularly in the programming component of the course, builds on previous sections and it is best to keep up with the materials throughout. You're welcome to go at your own pace and begin or end at any time.

Completing the reading and programming assignments for one section can take awhile. If you would like feedback, the instructors are here to help.


Prerequisites are courses that are suggested you understand before you attempt this course. If you're having a hard time understanding the material in this course, make sure you understand these prerequisites first.


Computer science is a discipline - also can be described as a branch of knowledge; where abstraction (the process of dealing with ideas rather than events) is of much concern.


Sciences humaines.svg Educational level: this is a tertiary (university) resource.
Progress-0250.svg Completion status: this resource is ~25% complete.
Nuvola apps edu mathematics-p.svg Subject classification: this is a mathematics resource.
  1. History of Computing
  2. Introduction to Turing Machines
  3. Basics of Computer Architecture
  4. Internet
  5. Personal Computers
  6. What is an Algorithm
  7. How To Implement a Problem Solution as a Program
  8. Development Environment and Language Principles
  9. Types and Variables
  10. Operators and Expressions
  11. Control Structures
  12. Procedures and Functions
  13. Arrays, Strings and Records
  14. Basic I/O
Despite the best efforts of the authors, the material in this course is imperfect. If you have a question or otherwise need help with this course, please post on the Help Page.

Next CourseEdit

Related Wikiversity resourcesEdit

Related LinksEdit

Academic and other organizationsEdit


Other E-booksEdit

Similar courses at other institutionsEdit