Loading
Nigeria's free digital learning hub. Videos, lecture notes, practice questions and leaderboards aligned with CCMAS, NBTE, NCCE, WAEC, NECO, IJMB and JAMB curricula.
Computer Science · 100 Level
This is the complete lecture note for COS 102 Problem Solving, prepared for Computer Science students at 100 Level. You can read it online below, open it in the full viewer, or download the PDF for offline study. It pairs with the course's video lectures, so you can read and watch together.
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS COURSE CODE: COS 102 COURSE TITLE: Problem Solving COURSE CEDIT LOAD: (2 Units C: LH 30; PH 0) LIST OF SERIES: 1. Foundations of Computing and Problem Identification 2. Problem-Solving Processes and Techniques 3. Algorithm Development and Solution Design 4. Flowcharts, Pseudocode, and Decision Structures 5. Programming Implementation in C and Python Foundations of Computing and Problem Identification Series outline 1.1 Introduction to Computing Concepts • 1.1.1 Definition and scope of computing • 1.1.2 Core concepts of computing in problem solving • 1.1.3 Importance of computing in everyday life 1.2 Understanding Problems in Computing • 1.2.1 Definition of a problem • 1.2.2 Characteristics of problems • 1.2.3 Routine problems and non-routine problems 1.3 Methods of Problem Identification • 1.3.1 Observation and analysis • 1.3.2 Classification of problems • 1.3.3 Examples of computing problems 1.4 Solvable and Unsolvable Problems • 1.4.1 Concept of solvability • 1.4.2 Examples of solvable problems
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS • 1.4.3 Examples of unsolvable problems Introduction Computers have become an integral part of modern life, shaping how we work, learn, and solve problems. From everyday tasks such as managing personal schedules to complex scientific research, computing provides the tools and processes that make problem solving more efficient and reliable. To fully appreciate the role of computing, it is important to begin by understanding its foundations and how problems are identified within this context. The aim of this Series is to introduce you to the fundamental concepts of computing and to equip you with the ability to recognise, classify, and evaluate problems in computing environments. By the end of this Series, you will be able to define computing concepts, distinguish between routine and non-routine problems, and explain the difference between solvable and unsolvable problems. We shall commence this Series by examining the basic concepts of computing and their relevance to problem solving. Next, we will explore the nature of problems in computing, including their characteristics and classifications. Following that, we will consider methods of problem identification, focusing on observation, analysis, and classification techniques. Finally, we will wrap up by discussing solvable and unsolvable problems, highlighting examples that illustrate the boundaries of computing solutions Series Learning Outcomes Upon completing this Series, you should be able to: • SLO 1.1 define the fundamental concepts of computing and explain their relevance to problem solving, • SLO 1.2 describe the characteristics of problems in computing and distinguish between routine and non-routine problems, • SLO 1.3 analyse methods of problem identification using observation, analysis, and classification techniques, and • SLO 1.4 evaluate the distinction between solvable and unsolvable problems with appropriate examples. 1.1 Introduction To Computing Concepts 1.1.1 Definition and scope of computing Computing refers to the process of using computers to perform tasks such as data processing, problem solving, and communication. A computer is an electronic device that
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS accepts input, processes it according to instructions, and produces output. The scope of computing extends beyond simple calculations to include areas such as artificial intelligence, data science, and software development. Computing is therefore both a science and a practical tool that enables us to solve problems efficiently. Fill in the blank: Computing is the process of using ______ to perform tasks such as data processing and problem solving. A simple diagram showing the input–process–output cycle of a computer. Figure 1.1: Basic computing cycle 1.1.2 Core concepts of computing in problem solving The core concepts of computing include data, information, algorithms, and programmes. Data refers to raw facts that have not yet been processed. Information is processed data that has meaning and can be used for decision-making. An algorithm is a step-by-step procedure for solving a problem, while a programme is a set of instructions written in a programming language that implements an algorithm. These concepts form the foundation of computing and are essential for problem solving. Fill in the blank: An algorithm is a step-by-step ______ for solving a problem. Term Definition Data Raw, unorganized facts, figures, or symbols that have not yet been processed (e.g., a list of numbers or names). Information Data that has been processed, structured, or presented in a given context to make it meaningful and useful. Algorithm A finite, step-by-step set of instructions or rules followed to solve a specific problem or perform a task.
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS Term Definition Programme A collection of instructions (often consisting of many algorithms) written in a programming language that a computer executes to perform a specific function. Box 1.1: Key concepts in computing” 1.1.3 Importance of computing in everyday life Computing plays a vital role in everyday life. It is used in education, business, healthcare, entertainment, and communication. For example, students use computers to access online learning resources, businesses rely on computing for financial management, and healthcare professionals use computing to analyse patient data. The importance of computing lies in its ability to make tasks faster, more accurate, and more reliable. Fill in the blank: Computing makes tasks faster, more ______, and more reliable. An image showing diverse applications of computing (students studying online, doctors using computers, business professionals analysing data). Plate 1.1: Everyday applications of computing Pilot questions 1.1 1. Which term refers to raw facts that have not yet been processed? 2. What is the difference between data and information? 3. Define an algorithm in computing. 4. State one example of how computing is applied in healthcare. 5. Explain why computing is considered both a science and a practical tool.
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS 1.2 Understanding Problems In Computing 1.2.1 Definition of a problem A problem in computing is a situation where there is a gap between the current state and the desired state, requiring a solution through logical or computational means. In simple terms, it is a task or challenge that needs to be addressed using computing tools or techniques. Problems can range from simple arithmetic calculations to complex tasks such as designing a secure communication system. Fill in the blank: A problem in computing is a situation where there is a gap between the ______ state and the desired state. A diagram showing the transition from current state to desired state through problem solving. Figure 1.2: Problem-solving gap in computing 1.2.2 Characteristics of problems Problems in computing have certain characteristics. They usually involve a goal (the desired outcome), constraints (limitations such as time, resources, or rules), and variables (elements that can change or be manipulated). Recognising these characteristics helps in formulating effective solutions. For example, designing a timetable system has the goal of scheduling classes, constraints such as room availability, and variables such as student numbers. Fill in the blank: Problems in computing usually involve a goal, constraints, and ______. Characteristic Description Goal The desired outcome or the specific "Desired State" the system aims to achieve once the problem is solved. Constraints The limits or boundaries within which the solution must operate (e.g., memory limits, time complexity, or security requirements).
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS Characteristic Description Variables The specific elements or data points that can change or be manipulated during the process to reach the goal. Box 1.2: Characteristics of computing problems 1.2.3 Routine problems and non-routine problems Routine problems are those that follow established procedures and can be solved using standard methods. Examples include calculating payroll or sorting a list of numbers. Non-routine problems are more complex, often requiring creativity, innovation, or new approaches. Examples include developing a new algorithm for image recognition or designing a novel encryption system. Distinguishing between routine and non-routine problems is important because it determines the techniques and tools needed for solving them. Fill in the blank: Routine problems can be solved using standard methods, while non-routine problems often require ______ and innovation. Table 1.1: Comparison of routine and non-routine problems
LA-NET | ONLINE LEARNING VIDEO PLATFORM FOR POST-SECONDARY & HIGHER INSTITUTION STUDENTS Pilot questions 1.2 1. Define a problem in computing. 2. List three characteristics of computing problems. 3. Give one example of a routine problem and one example of a non-routine problem. 4. Explain why constraints are important in problem solving. 5. State the difference between routine and non-routine problems. .3 Methods Of Problem Identification 1.3.1 Observation and analysis Observation refers to carefully watching and noting how a system or process behaves, while analysis is the systematic examination of the observed data to identify issues. In computing, observation may involve monitoring how users interact with software, while analysis helps to pinpoint where errors or inefficiencies occur. Together, these methods provide the foundation for recognising problems before attempting solutions. Fill in the blank: Observation involves carefully watching a system, while ______ involves examining the data to identify issues. A diagram showing
This is the opening of the note. Read the full note or download the PDF to continue.