Problem Solving Computer Science
Problem Solving Computer Science
Prologue
Solving problems is the core of computer science. Programmers must first understand how a
human solves a problem, then translate this 'algorithm' into something a computer can do, and
finally write the specific syntax required to get the job done. Machines may solve problems
differently from humans.
Problem solving uses generic or ad hoc methods in an orderly manner. Techniques from
philosophy, AI, computer science, engineering, and more relate to mental techniques studied in
psychology and cognitive sciences.
Resources like time, memory, and energy are considered (computational complexity theory).
3. Coding
6. Program Documentation
1. Problem Analysis
Investigates a situation to understand and propose solutions.
Steps:
2. Program Design
**Algorithm**: A finite, unambiguous sequence of steps for solving a problem. Optimal
algorithms can outperform non-optimal ones even on older hardware.
3. Coding
The process of writing code to perform tasks.
6. Program Documentation
Explains how software operates and how to use it.
Types:
- Requirements
- Architecture/Design
- End-user manuals
- Marketing materials