Aug 05, 2026  
2026-2027 IHCC Catalog 
  
2026-2027 IHCC Catalog

CS 1101 - Introduction to Computer Science and Problem Solving



3 Credits
Provides an overview of computer science topics with an emphasis on problem-solving and algorithm development. This course is geared for students with no computer science or programming background and can serve as a solid foundation for further studying computer science. Algorithm development will be taught using pseudocode and diagrams. Computer programs will be written utilizing one or more computer languages. Topics to be included are computer architecture, networks, Boolean logic, and computer ethics.

Pre-Requisites MATH 1118  

Major Content Areas
System software (including operating systems, language translation)

Emerging technologies (e.g. cloud computing, data analytics, mobile computing, internet of things, and artificial intelligence)

Application software including database, internet, and electronic commerce

The role of games, simulation, and virtual reality in society

Overview of occupations in computing-related fields.Security, privacy, ethics, and other societal and legal issues

Digital systems evolution and impact on society and the economy.

Concept of an algorithm as a basis for computer science.Algorithm design, use in problem-solving, and basic performance metrics.

Overview of programming languages and paradigms. Common programming structures and their use in algorithms.

Introduction to binary numbers.

Introduction to Boolean algebra.

Introduction to computer system organization.

Introduction to data communications and networks.

Learning Outcomes
Describe the Von Neumann architecture and interaction between the processor and memory.

Explain the role of the operating system in a digital system.

Describe emerging technologies such as cloud computing, artificial intelligence, data analytics and others.

Describe different types of application software including database, internet, and games.

Explain security and privacy threats and describe measures to prevent them.

Describe the evolution of digital systems and their past, present, and potential future impact on human society.

Describe algorithms and their role in solving problems.

Develop algorithmic solutions using appropriate programming structures.

Express algorithms using pseudocode, flow-charts or other design notation.

Demonstrate knowledge of common algorithms, such as binary search, finding the minimum/maximum value in a list, and quadratic sort.

Demonstrate the ability to select an appropriate algorithm for solving a problem.

Implement algorithms with a high-level programming language and provide simple documentation.

Express numbers in binary format.

Express and simplify Boolean expressions.